Hallo,
ich habe ein Bild-Upload-Script und stehe nun vor folgendem Problem und hoffe, dass mir jemand weiter helfen kann.
Das bisherige Script lässt den User ein Bild im Format jpg oder gif mit einer definierten max Größe (KB) hochladen.
Die Thumbnail-Problematik habe ich so gelöst, dass ich die File org. einlese und mit witdh= verkleinere. Nicht smooth, habe die Angehensweise bisher vernachlässigt. Nun ist es aber soweit und ich kriege nur Errors.
Hier mal das Script mit Thumb-Generierung (vorher funktionierte es):
Ab // thumbs das neue Script.
Und da kriege ich folgende Errors:
Zum Anderen ist die Erstellung der Thumbs nur auf JPG ausgelegt. Sollen ja aber auch GIFs sein.
ich habe ein Bild-Upload-Script und stehe nun vor folgendem Problem und hoffe, dass mir jemand weiter helfen kann.
Das bisherige Script lässt den User ein Bild im Format jpg oder gif mit einer definierten max Größe (KB) hochladen.
Die Thumbnail-Problematik habe ich so gelöst, dass ich die File org. einlese und mit witdh= verkleinere. Nicht smooth, habe die Angehensweise bisher vernachlässigt. Nun ist es aber soweit und ich kriege nur Errors.
Hier mal das Script mit Thumb-Generierung (vorher funktionierte es):
Code:
<?php
if(isset($_POST["submitted"])){
$tempname = $_FILES['upload_file']['tmp_name'];
$name = $_FILES['upload_file']['name'];
$type = $_FILES['upload_file']['type'];
$size = $_FILES['upload_file']['size'];
$picsize = $_FILES['upload_file']['tmp_name'];
$error = '';
$sSavePath = 'userpix/';
list($width, $height) = getimagesize($picsize);
if($_FILES){
if($type == "image/gif") {
$sFileType = '.gif';
} elseif ($type == "image/pjpeg"){
$sFileType = '.jpg';
}else{
$error .= "Es sind nur JPG- oder GIF-Formate erlaubt.<br />";
}
// Rename
$name = get_username($userid).$sFileType;
if($width>500 || $height>500) {
$error .= "Das ausgewählte Bild ist zu groß. <b>Maximal 500 x 500 Pixel.</b>";
}
if($size > "512000") {
$error .= "Das ausgewählte Bild ist zu groß. <b>Maximal 500 KB.</b><br />";
}
if(!$error) {
$succ .= "Dein Bild wurde erfolgreich hochgeladen.<br />";
$tmpl->assign('success',$succ);
copy($tempname, $sSavePath.$name);
// thumb erstellen
$scale = 6;
$size = getimagesize($name);
$width = round($size[0]/$scale);
$height = round($size[1]/$scale);
$src = imagecreatefromjpeg($name);
$dest = imagecreatetruecolor($width,$height);
$strFileSize = round($strFileSize/1024);
imagecopyresampled($dest,$src,0,0,0,0,$width,$height,$size[0],$size[1]);
imagejpeg($dest,"userpix/thumb/".$name."-thumb.jpg",100);
$pfadundbild = $sSavePath.$name;
$result = $db->query("update user set pic = '".$pfadundbild."' where userid = '".$userid."'");
}
else {
$tmpl->assign('eventm',$error);
}
}
}
/*
// Bild verkleinern und im Ornder "thumbs" speichern ***************************
$scale = 6;
$size = getimagesize("pfad/dateiname.jpg");
$width = round($size[0]/$scale);
$height = round($size[1]/$scale);
$src = imagecreatefromjpeg(pfad/dateiname.jpg);
$dest = imagecreatetruecolor($width,$height);
$strFileSize = round($strFileSize/1024);
imagecopyresampled($dest,$src,0,0,0,0,$width,$height,$size[0],$size[1]);
imagejpeg($dest,"../images/thumbs/wunschverzeichnis/dateiname.jpg",100);
imagedestroy($dest);
imagedestroy($src);
*/
?>
Ab // thumbs das neue Script.
Und da kriege ich folgende Errors:
Code:
Warning: getimagesize(admin.jpg) [function.getimagesize]: failed to open stream: No such file or directory in C:\xampp\htdocs\com\picupload.inc.php on line 48
Warning: imagecreatefromjpeg(admin.jpg) [function.imagecreatefromjpeg]: failed to open stream: No such file or directory in C:\xampp\htdocs\com\picupload.inc.php on line 51
Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in C:\xampp\htdocs\com\picupload.inc.php on line 52
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in C:\xampp\htdocs\com\picupload.inc.php on line 54
Warning: imagejpeg(): supplied argument is not a valid Image resource in C:\xampp\htdocs\com\picupload.inc.php on line 55
Zum Anderen ist die Erstellung der Thumbs nur auf JPG ausgelegt. Sollen ja aber auch GIFs sein.