Hallo Leute,
ich hab hier Probleme beim hochladen der Bilder.
Mein Ziel ist es in den Ordner temp/ das Originale Bild zu speichern und das verkleinerte in den Ordner pic/5.09/ ein 500 breite/höhe proportionales Bild hochzuladen und eine Thumbnail proportional 120 breite/höhe.
Ich sitze hier schon halben Tag rum und Probiere es alleine zu schaffen aber jetzt wende ich mich mal an euch, kann mir jemand helfen?
ich hab hier Probleme beim hochladen der Bilder.
Mein Ziel ist es in den Ordner temp/ das Originale Bild zu speichern und das verkleinerte in den Ordner pic/5.09/ ein 500 breite/höhe proportionales Bild hochzuladen und eine Thumbnail proportional 120 breite/höhe.
Ich sitze hier schon halben Tag rum und Probiere es alleine zu schaffen aber jetzt wende ich mich mal an euch, kann mir jemand helfen?
PHP-Code:
<?php
if (isset($rv_dologon))
{
$datei = $_FILES['datei']['name'];
$datei = str_replace(" ", "_", "$datei");
$datei = htmlentities($datei); // Mit leerzeichen -> _ hab ich auch noch nicht getestet, sollte aba klappen
$dateityp = GetImageSize($_FILES['datei']['tmp_name']);
if ($dateityp[2] == 2)
{
if ($_FILES['datei']['size'] < 3048000) //max. Größe in bytes
{
move_uploaded_file($_FILES['datei']['tmp_name'], "temp/temp-$datei");
$picordner = date("ny");
//$datei = date('jGis') . $_SESSION['user_id'];
$file = "temp/temp-$datei";
$target = "pic/$picordner/$datei";
$max_width = "500"; //Breite ändern
$max_height = "500"; //Höhe ändern
$quality = "90"; //Qualität ändern (max. 100)
$src_img = imagecreatefromjpeg($file);
$picsize = getimagesize($file);
$src_width = $picsize[0];
$src_height = $picsize[1];
if ($src_width > $src_height)
{
if ($src_width > $max_width)
{
$convert = $max_width / $src_width;
$dest_width = $max_width;
$dest_height = ceil($src_height * $convert);
}
else
{
$dest_width = $src_width;
$dest_height = $src_height;
}
}
else
{
if ($src_height > $max_height)
{
$convert = $max_height / $src_height;
$dest_height = $max_height;
$dest_width = ceil($src_width * $convert);
}
else
{
$dest_height = $src_height;
$dest_width = $src_width;
}
}
$dst_img = imagecreatetruecolor($dest_width, $dest_height);
imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_height, $src_width, $src_height);
imagejpeg($dst_img, "$target", $quality);
// Ab hier wird noch eine Thumbnail erstellt.
$file2 = "temp/$datei";
$target2 = "pic/$picordner/thumb-$datei";
$max_width = "120"; //Thumbnailbreite
$max_height = "120"; //Thumbnailhöhe
$quality = "90"; //Thumbnailqualität
$src_img = imagecreatefromjpeg($file2);
$picsize = getimagesize($file2);
$src_width = $picsize[0];
$src_height = $picsize[1];
if ($src_width > $src_height)
{
if ($src_width > $max_width)
{
$convert = $max_width / $src_width;
$dest_width = $max_width;
$dest_height = ceil($src_height * $convert);
}
else
{
$dest_width = $src_width;
$dest_height = $src_height;
}
}
else
{
if ($src_height > $max_height)
{
$convert = $max_height / $src_height;
$dest_height = $max_height;
$dest_width = ceil($src_width * $convert);
}
else
{
$dest_height = $src_height;
$dest_width = $src_width;
}
}
$dst_img = imagecreatetruecolor($dest_width, $dest_height);
imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_height, $src_width, $src_height);
imagejpeg($dst_img, "$target2", $quality);
unlink($file);
echo "<img src=\"pic/$datum-$userid.jpg\">";
}
else
{
echo "<center><b>Das Bild darf nicht größer als 3MB sein</b></center>";
}
}
else
{
echo "<center><b>Bitte nur Bilder im JPG Format hochladen</b></center>";
}
}
?>
<div>
<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
<br>
<br>
<br>
<input name="datei" type="file" size="50">
<br>
<br>
</div>
<div style="width:600px; padding:50px 0 30px 0; text-align:center;">
<input type="submit" name="rv_dologon" value="Bild hochladen" style="width:200px; height:25px;" />
</div>
</form>

Kommentar