Hallo, ich hab mir folgendes Script zusammengebastelt, mit diesem kann man Bilder hochladen, diese werden resized, das ganze 2 mal. Man kann maximal 5 Bilder hochalden.
Ich hab damit nur Probleme. Mit mehreren Bildern funzt schonmal fast nie, oft kommt einfach "Die seite kann nicht angezeigt werden". Oft ist die Seite anch dem Upload dann einfach Weiß, enthält keine Daten und das Bild ist nicht hochgeladen. Auch bei bildern über 1mb größe gibt es nur Probleme. Ich weiß, es ist viel verlangt, aber kann vielleicht einer der Ahnung hat sich mal den Quelltext ansehen und sagen was vielleicht nicht ganz optimal daran sit? DANKE IM VORRAUS, es ist sehr wichtig!
PHP-Code:
<?php
include("config.php");
if (isset($_FILES['1']['tmp_name']))
{
$lauf=0;
$anzahl=$_POST['anzahl'];
while ($lauf < $anzahl)
{
$lauf=$lauf+1;
$name = time();
$name=$name.".jpg";
move_uploaded_file($_FILES[$lauf]['tmp_name'], "Einsaetze/Fotos/".$name);
$datei_name=$name;
//resizen
$breite_max=500;
$hoehe_max=600;
$size=getimagesize("Einsaetze/Fotos/".$name);
$breite=$size[0];
$hoehe=$size[1];
if ($breite < $hoehe) {
$neueHoehe = $hoehe_max;
$neueBreite = $breite*$neueHoehe/$hoehe;
} else {
$neueBreite = $breite_max;
$neueHoehe = $hoehe*$neueBreite/$breite;
}
//Bildgröße festgestellt, jetzt resizen
$altesBild=ImageCreateFromJPEG("Einsaetze/Fotos/".$name);
$neuesBild=imageCreateTrueColor($neueBreite,$neueHoehe);
imageCopyResampled($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
ImageJPEG($neuesBild, "Einsaetze/Fotos/".$name,100);
//resizen
$breite_max=120;
$hoehe_max=170;
$size=getimagesize("Einsaetze/Fotos/".$datei_name);
$breite=$size[0];
$hoehe=$size[1];
if ($breite < $hoehe) {
$neueHoehe = $hoehe_max;
$neueBreite = $breite*$neueHoehe/$hoehe;
} else {
$neueBreite = $breite_max;
$neueHoehe = $hoehe*$neueBreite/$breite;
}
//Bildgröße festgestellt, jetzt resizen
$altesBild=ImageCreateFromJPEG("Einsaetze/Fotos/".$datei_name);
$neuesBild=imageCreateTrueColor($neueBreite,$neueHoehe);
imageCopyResampled($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
ImageJPEG($neuesBild, "Einsaetze/Fotos/t".$datei_name,100);
$sql4 = "SELECT
id,
fotos
FROM
einsaetze
WHERE
id='".$_GET['id']."';";
$result4 = mysql_query($sql4) OR die(mysql_error()); // Holen der alten Informationen
$entray4 = mysql_fetch_assoc($result4);
$fotos=explode(",",$entray4['fotos']);
$nummer=0;
if (isset($_POST['Wasserzeichen']))
{
$nummer=1;
}
$fotos[]=$datei_name."!".$nummer;
$fotos=implode(",",$fotos);
mysql_query("UPDATE einsaetze SET ". // Routine zum Bearbeiten
"fotos = '".$fotos."'".
"WHERE id='".$_GET['id']."' ") OR die(mysql_error());
}
}
echo("<html><head><body>
<form action='foto_hinzufuegen.php?id=".$_GET['id']."' enctype='multipart/form-data' method='post'>
Wieviele Bilder (Maximal 5): <input type=text name=anzahl value=1><br>
Bild 1: <input name=\"1\" type='file'><br><br>
Bild 2: <input name=\"2\" type='file'><br><br>
Bild 3: <input name=\"3\" type='file'><br><br>
Bild 4: <input name=\"4\" type='file'><br><br>
Bild 5: <input name=\"5\" type='file'><br><br>
<input type=checkbox name=Wasserzeichen checked>Copyright einfügen? <br><br>
<input type=submit value='hochladen'></body></html>");
?>
Kommentar