2-frozen Geschrieben 12. Januar 2005 Geschrieben 12. Januar 2005 Folgender Code sollte mir eigentlich ein Image aus meiner DB ziehen und ein Thumbnail daraus erzeugen. Das Image kann er auslesen, jedoch scheint im markierten Bereich etwas nicht zu stimmen Wenn ich den weglasse läuft es, aber dann habe ich ja den Thumbnaileffekt nicht. <?php if(!isset($Id)) { die("Need 'Id' parameter"); } else { $Id=addslashes($Id); } include("common.php"); //set up SQL connection $link = mysql_connect ($server, $user, $password); if (! $link) { die ("Couldn't connect to mySQL server"); } if (!mysql_select_db ($db, $link) ) { die ("Coldn't open $db: ".mysql_error() ); } $query = "SELECT filetype, bin_data FROM tbl_Files WHERE id_files='$Id';"; $result = mysql_query($query); $query_data = mysql_fetch_array($result); $bin_data = $query_data[bin_data]; $filetype = $query_data[filetype]; //Beginn des fehlerhaften Bereiches $tmp = ImageCreateFromString ($bin_data); $image_w = imageSX($tmp); $image_h = imageSY($tmp); $new_w = $max_size; $ratio = ($image_w/$new_w); $new_h = ($image_h/$ratio); $out = @ImageCreateTrueColor($new_w, $new_h);//Note: This function was added in PHP 4.0.6 and requires GD 2.0.1 or later if (!$out) { $out = imageCreate($new_w, $new_h); } //imagecreate kicks in if imagecreatetruecolor could not create the image //copy the original image info into the new image with new dimensions //checking to see which function is available if (function_exists("imageCopyResampled")) { if (!@ImageCopyResampled($out, $tmp, 0, 0, 0, 0, $new_w, $new_h, $image_w, $image_h)) ImageCopyResized($out, $tmp, 0, 0, 0, 0, $new_w, $new_h, $image_w, $image_h); } else ImageCopyResized($out, $tmp, 0, 0, 0, 0, $new_w, $new_h, $image_w, $image_h); if (imageColorExact($out,255,255,255)!=-1) { $white=ImageColorAllocate($out,255,255,255); } else { $white=imageColorClosest($out,255,255,255); } if (imageColorExact($out,0,0,0)!=-1) { $black=ImageColorAllocate($out,0,0,0); } else { $black=imageColorClosest($out,0,0,0); } //this part adds the string in the lower right hand corner //comment them out if you don't want to use them //otherwise make sure you define $smallImageImprint in common.php //or pass along as a parameter when you call this file imageString($out,1,$new_w-($max_size/2),$new_h-8,"$smallImageImprint",$black); imageString($out,1,$new_w-($max_size/2)-1,$new_h-9,"$smallImageImprint",$white); //Ende des fehlerhaften Bereiches Header("Content-type: $filetype"); imageJPEG($out); imageDestroy($out); ?> [/PHP] Fehlermeldung: Warning: Division by zero in thumbnail_img.php on line 37 Warning: Division by zero in thumbnail_img.php on line 38 also $image_w = imageSX($tmp); $image_h = imageSY($tmp); Aber er liest das Image doch aus, oder nicht? Hat jemand eine Idee? Liegt es an der GD Version? Hier der Auszug aus phpinfo: gd GD Support enabled GD Version bundled (2.0.28 compatible) FreeType Support enabled FreeType Linkage with freetype GIF Read Support enabled GIF Create Support enabled JPG Support enabled PNG Support enabled WBMP Support enabled XBM Support enabled Thx, 2-helpless
tobias-digital Geschrieben 13. Januar 2005 Geschrieben 13. Januar 2005 Hi! Ohne jetzt den ganzen Code ausprobiert zu haben, aber ich denke der Interpreter meckert diese Zeilen an: $new_w = $max_size; $ratio = ($image_w/$new_w); $new_h = ($image_h/$ratio); [/PHP] Und "Division by Zero" weil $max_size nicht existiert, also faktisch 0 ist. Gruß, Tobias
kills Geschrieben 13. Januar 2005 Geschrieben 13. Januar 2005 einfach ma mit error_reporting(E_ALL) ausprobieren und zwischendrinn schritt für schritt ein exit machen. dann siehste auch warnungen/fehler etc.
2-frozen Geschrieben 13. Januar 2005 Autor Geschrieben 13. Januar 2005 ...das kommt davon, wenn man bis spät in die Nacht probiert .. Tobi hatte recht. Das Problem war .. ich suchte schon seit Wochen nach dem Script und als ich es endlich fand, fehlten dort die Hinweise auf das setzen der gemeinsamen Variablen ... nun funzt es 1a. Thx a lot
Nobse Geschrieben 11. Februar 2005 Geschrieben 11. Februar 2005 hmpf, ich habe auf neues Thema geklickt nicht auf Antworten...
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden