Hallo Zusammen,
Ich suche ungern fertige scripte sondern ‚bastle‘ die existenten PHP-Funktionen lieber zusammen bis das Script tut was es soll.
Zumal das veröffentlichen von Scripten ja eher Rar und verschrien ist.
@Mermshaus: Aber deine classe werd ich wohl so übernehmen wollen 
Besonders da es Typ unabhängig ist.
Dennoch würde ich gern mal mein gebasteltes begutachten lassen da ich nen echt komischen Fehler hab.
Es werden zwar alle Grafiken resized, jedoch wird nicht jede Grafik auf den Server geladen. Unabhängig ob JPG, GIF, PNG. Mir scheint das kleine Grafiken (w:50px etc) Probleme bereiten. Ein 100%iges Fehlerschema kann ich jedoch nicht erkennen.
Nun mal zum (kleinen) Code:
[PHP]$timestamp = time();
$datum = date(„Y-m-d“,$timestamp);
$uhrzeit = date(„H-i-s“,$timestamp);
if(isset($_FILES[‚userlogo‘][‚tmp_name‘]))
{
$dateityp = GetImageSize($_FILES[‚userlogo‘][‚tmp_name‘]);
if($dateityp[2]==1 OR $dateityp[2]==2 OR $dateityp[2]==3)
{
if($dateityp[2] == 1) $type=„gif“;
if($dateityp[2] == 2) $type=„jpg“;
if($dateityp[2] == 3) $type=„png“;
$file = $_FILES['userlogo']['tmp_name'];
switch ($dateityp[2])
{
case 1:
$type="gif";
$src_img = imagecreatefromgif($file);
break;
case 2:
$type="jpg";
$src_img = imagecreatefromjpeg($file);
break;
case 3:
$type="png";
$src_img = imagecreatefrompng($file);
break;
}
$imgwidth = $dateityp[0];
$imgheight = $dateityp[1];
//Namen kreieren
$userlogonameoriginal=$_FILES['userlogo']['name'];
$_FILES['userlogo']['name']=$_SESSION['userid']."_".$datum."_".$uhrzeit.".".$type;
$imgname = $_FILES['userlogo']['name'];
$target = $imgname;
$imgsize = $_FILES['userlogo']['size'];
if ( $imgwidth > 333 )
{
$max_width = "333";
$picsize = getimagesize($file);
$src_width = $picsize[0];
$src_height = $picsize[1];
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;
}
$dst_img = imagecreatetruecolor($dest_width,$dest_height);
imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_height, $src_width, $src_height);
switch ($dateityp[2])
{
case 1:
$quality = "9";
imagegif($dst_img, "pics/upload/$target"); //, $quality);
break;
case 2:
$quality = "90";
imagejpeg($dst_img, "pics/upload/$target", $quality);
break;
case 3:
$quality = "9";
imagepng($dst_img, "pics/upload/$target", $quality);
break;
}
$imgwidth = $dest_width;
$imgheight = $dest_height;
}
//if($imgsize < 512400)
//{
//if(move_uploaded_file($imgname, "pics/upload/$target"))
//{
move_uploaded_file($imgname, "pics/upload/$target");
//}
echo "<br><br><br><p align=\"center\">Das Bild wurde Erfolgreich hochgeladen<br><br><img src=\"pics/upload/".$imgname."\"></p><br><br>";
/*else
{
echo "<br><br><br><p align=\"center\">Das Bild konnte nicht Erfolgreich hochgeladen werden.<br><br></p><br><br>";
die();
}*/
//BILD in DB eintragen[/PHP]
Was auch komisch ist, [PHP]if(move_uploaded_file($imgname, „pics/upload/$target“))[/PHP] hat mir immer FALSE geliefert, das Bild jedoch auf den FDP als auch ‚localhost‘ geladen.