Automatisch Bilderverkleinern geht nur zum teil

weberc

Grünschnabel
Folgendes Prob.

Lade Bilder hinauf und danach werden Sie automatisch verkleinert!

Das funktioniert auch alles einwandfrei auf meinen Test Server "Windows XP"

Beim Kunden aber geht das leider nicht. Bitte um eure Hilfe "Suse 9.3"Linux
Es wird zwar das Bild hinaufgeladen aber nicht verkleinert!

DANKE

Hinaufgeladen:

PHP:
<form action="upload.php" method="post" name="eintragen" enctype="multipart/form-data" > 
<input type="file" name="picture1" size="40" tabindex="52"><input type="hidden" name="send" value="ja"><br>
<input type="submit" value="Eintragen" tabindex="60">
<input type="reset" value="Löschen">
</form>


Gespeichert und verkleinert!

PHP:
<?php if(isset($_POST['send']) && $_POST['send'] == "ja") 
{ $uploaddir = '/srv/www/FEUERWEHR/secure/test/'; 
if (move_uploaded_file($_FILES['picture1']['tmp_name'], $uploaddir . $_FILES['picture1']['name'])) 
{ 

print "1 Bild erfolgreich hochgeladen. 

\n"; } 
else 
{ 
print "Kein Bild hochgeladen"; 
} 
} 
?>


<? 
// Datei auf Grösse kontrollieren 

$maxsize = 2000000000000000000000; // KB 
$maxsize = $maxsize * 1024; // Umwandlung in Byte 

if ($_FILES['picture1']['size'] > $maxsize) 
{ 
header ("location: upload_error.php"); exit; 
} 

// Datei verschieben 



$dir = "/srv/www/FEUERWEHR/secure/test/"; 

if ($_FILES['picture1']['size'] > "0") 
{ 

$filename = $_FILES['picture1']['name']; 

move_uploaded_file ($picture, "$dir$filename"); 
chmod ("$dir$filename", 0777); 
} 

// Datei auf Typ kontrollieren und wenn nötig wieder löschen 

$fileinfos = getimagesize("$dir$filename"); 
$type = $fileinfos[2]; // 2 = JPG 

if ($type != 2) 
{ 
unlink("$dir$filename"); // Löschen 
header ("location: upload_error.php"); exit; 
} 

// Thumbnail erstellen 
////////////////////// 

// Anmerkungen: 
// 
// $dir = Pfad für das Verzeichnis, in dem sich das upgeloadete Bild befindet 
// $filename = dateiname.jpg 

// Größe des Bildes auslesen 

$size = getimagesize("$dir$filename"); 
$width = $size[0]; 
$height = $size[1]; 

// Breite des Thumbnails festlegen (Höhe wird automatisch angepasst) 

$width_tn = 400; 
$height_tn = intval($height * $width_tn / $width); 

// Bei GD < 2.0.1: ImageCreateTrueColor -> ImageCreate, ImageCopyResampled -> ImageCopyResized 

$picture = ImageCreateFromJPEG("$dir$filename"); 
$picture_tn = ImageCreateTrueColor($width_tn,$height_tn); 
ImageCopyResampled($picture_tn,$picture,0,0,0,0,$width_tn,$height_tn,$width,$height); 

// Endung "_tn" bei Dateiname hinzufügen, vor ".jgp" 

$filename = explode (".", $filename); 
$tn = "."; 

// Thumbnail in $dir mit angepasstem $filename speichern, JPG Qualität: 95 

ImageJPEG($picture_tn,"$dir$filename[0]$tn$filename[1]",100); 

// Temporären Speicher auf Server wieder frei geben 

ImageDestroy($picture); 
ImageDestroy($picture_tn); 

?>
 
Setz doch mal PHPs Fehlermeldungssensibilität auf den höchsten Level, sodass alle Fehlermeldungen ausgegeben werden.
 
> $maxsize = 2000000000000000000000; // KB

Ist das ein Tippfehler ?

> ImageJPEG($picture_tn,"$dir$filename[0]$tn$filename[1]",100);

Unsaubere Schreibweise :-)
ImageJPEG($picture_tn, $dir.$filename[0].$tn.$filename[1],100);
 
Zurück