Mit imagecreatefromjpeg Thumbnails aus Bild erstellen nee.

Blaschki

Erfahrenes Mitglied
Hallo

Ich habe ein Probelm.
Ich arbeite an einer Web Gallerie, aber das Probelm ist das
bis jetzt die Thumbnails immer erst mit Hand im nachherein verkleinert werden mussten, um dem Benutzern keine Arbeit zu machen.

Ich wollte jetzt mit hilfe des Befehls "imagecreatefromjpeg" automatisch sie erstellen. Si sollen immer eine Breit4e von 200 Pixel haben.

Aber irgend wie macht es nichts.

Der code:
PHP:
<?php 
 $heute = date("Y-m-d");
 
 $abfrage="SELECT * FROM foto WHERE f_id like '$f_typ'  ORDER by name ASC LIMIT 0,1";
 $ergebnis=mysql_query($abfrage);
 while($zeile = mysql_fetch_array($ergebnis)) { 
 $pfad_1 = ($zeile[pfad_name]);
 }
 
$tempname = $_FILES['file']['tmp_name']; 
$name = $_FILES['file']['name']; 

$type = $_FILES['file']['type']; 
$size = $_FILES['file']['size']; 

if($type != "image/jpeg" && $type != "image/jpg") { 
$err[] = "nur jpeg (jpg) Dateien dürfen hochgeladen werden."; 
} 
if($size > "200000") { 
$err[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 200 KB!"; 
} 
If(empty($err)) { 
copy("$tempname", "foto/$pfad_1/$name"); 

$im1=imagecreatefromjpeg("$tempname"); //erstellt ein Abbild im Speicher
$size=getimagesize("$tempname"); //ermittelt die Größe des Bildes

$breite=$size[0]; //die Breite des Bildes
$hoehe=$size[1]; //die Höhe des Bildes
$breite_r=($breite/200); //Die Beite wird durch 200 geteilt
$breite_g=($hoehe*$breite_r); //um spaeter auch die Hoehe danch zu rechnen. Dadurch sieht es ordenlich aus.
$breite_neu=200; //die breite des Thumbnails
$hoehe_neu=$breite_g; //die Höhe des Thumbnails

$im2=imagecreate($breite_neu,$hoehe_neu); //Thumbnail im Speicher erstellen

imagecopyresized($im2,$im1,0,0,$breite,$hoehe,0,0,$breite_neu,$hoehe_neu); //Bild in Thumbnail kopieren

imagejpeg($im2,"small_foto/$pfad_1/$name.jpg"); //Thumbnail speichern
imagedestroy($im1); //Speicherabbild wieder löschen
imagedestroy($im2); //Speicherabbild wieder löschen

echo "<b>Die Datei $name wurde erfolgreich hochgeladen!</b>"; 
} 
else { 
foreach($err as $error) 
echo "$error<br>"; 
} 
echo"<br><br><br>$tempname\n";
echo"<br><br>$name\n";
echo"<br><br>$type\n";
echo"<br><br>$size\n";
echo"<br><br>$f_typ\n";
echo"<br><br>$memo\n";
echo"<br><br>$pfad_1\n";

$name_o =("foto/$pfad_1/$name");
 
$insertin = "INSERT INTO foto (kat,name,f_memo,f_ein,f_typ) VALUES ('b','$name_o','$memo','$heute','$f_typ')";
mysql_query($insertin) or die("Error: " . mysql_error());
?>
 

Neue Beiträge

Zurück