Hallo,
ich benötige für ein Newssystem nen Bilderupload. Habe ein eigentlich schon funktionierendes Skript von meiner anderen Seite genommen und angepasst, bekomme aber keine Bilder hochgeladen. Der Ordner hat chmod 0777, aber es landet nichts im Ordner. Eine Fehlermeldung gibt's auch nicht. Bitte um Hilfe, danke.
ich benötige für ein Newssystem nen Bilderupload. Habe ein eigentlich schon funktionierendes Skript von meiner anderen Seite genommen und angepasst, bekomme aber keine Bilder hochgeladen. Der Ordner hat chmod 0777, aber es landet nichts im Ordner. Eine Fehlermeldung gibt's auch nicht. Bitte um Hilfe, danke.
PHP:
$uploaddir = "/xyz/abc/bilder/"; // Bilderordner
$erlaubt = array ("image/jpg", "image/jpeg"); //erlaubte Dateien, kann erweitert werden
$maxsize = 200; //Maximale Groesse in kb
if( $_FILES['bild']['error'] == 0 ) {
$dateiname = $datum.".jpg";
$bilddir = "http://www.xyz.de/bilder";
$bildurl = "".$bilddir."/".$dateiname."";
if (!in_array($_FILES['bild']['type'],$erlaubt)) { // mimetyp erlaubt?
echo "Die Datei \"".$_FILES['bild']['name']."\" ist nicht für den Upload erlaubt<br/>";
continue;
}
$temptime = time();
$tempname = $temptime.".jpg";
if(copy($_FILES['bild']['tmp_name'], $uploaddir.$tempname)) {
$size = getimagesize("$uploaddir$tempname"); // größe des bildes auslesen
$width = $size[0];
$height = $size[1];
if($width > 1500 or $height > 1500) { // wenn bild zu groß ist
if($height > $width) { $height_tn = 800; $width_tn = intval($width * $height_tn / $height); }
if($height < $width) { $width_tn = 800; $height_tn = intval($height * $width_tn / $width); }
// Bei GD < 2.0.1: ImageCreateTrueColor -> ImageCreate, ImageCopyResampled -> ImageCopyResized
$picture = ImageCreateFromJPEG("$uploaddir$tempname");
$picture_tn = ImageCreateTrueColor($width_tn,$height_tn);
ImageCopyResampled($picture_tn,$picture,0,0,0,0,$width_tn,$height_tn,$width,$height);
// Thumbnail in $dir mit angepasstem $filename speichern, JPG Qualität: 95
ImageJPEG($picture_tn,"$uploaddir$dateiname",95);
// Temporären Speicher auf Server wieder frei geben
ImageDestroy($picture);
ImageDestroy($picture_tn);
$bildurl = $bildurl;
echo "Die Datei \"".$_FILES['bild']['name']."\" wurde automatisch verkleinert<br/>";
// unlink("$uploaddir$tempname");
echo "File-Upload erfolgreich. ";
}
else {
if(copy($_FILES['bild']['tmp_name'], $uploaddir.$dateiname)) {
unlink("$uploaddir$tempname");
echo "File-Upload erfolgreich. ";
}
else { echo "uuuups"; }
}
}