oldputz1990
Erfahrenes Mitglied
Hallo!
Ich benütze zum Uploaden der Bilder "MulitPowUpload".
Die Bilder werden dann an die "bildupload.php" Datei gesendet.
Dort werden sie verarbeitet:
---> resize.php:
Es werden die Bilder jedoch normal gespeichert.
Ohne Wasserzeichen und nicht verkleinert!
Wo ist der Fehler?
Danke!
Ich benütze zum Uploaden der Bilder "MulitPowUpload".
Die Bilder werden dann an die "bildupload.php" Datei gesendet.
Dort werden sie verarbeitet:
PHP:
<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.
echo 'Upload result:<br>'; // At least one symbol should be sent to response
if(isset($_GET['ordner']))
{
$ord = strip_tags($_GET['ordner']);
mkdir('fotoalbum/'.$ord.'/big', 666);
mkdir('fotoalbum/'.$ord.'/small', 666);
}
else
{
$ord = 'error';
}
$uploaddir = dirname($_SERVER['SCRIPT_FILENAME'])."/fotoalbum/$ord/";
$target_encoding = "ISO-8859-1";
echo '<pre>';
include("resize.php");
if(count($_FILES) > 0)
{
$arrfile = pos($_FILES);
$uploadfile = $uploaddir . iconv("UTF-8", $target_encoding,basename($arrfile['name']));
scaleimage(500);
if (move_uploaded_file($arrfile['tmp_name'], $uploadfile))
echo "File is valid, and was successfully uploaded.\n";
}
else
echo 'No files sent. Script is OK!'; //Say to Flash that script exists and can receive files
echo 'Here is some more debugging info:';
print_r($_FILES);
echo "</pre>";
?>
---> resize.php:
PHP:
<?php
error_reporting(E_ALL);
function scaleimage($ThumbnailBreite){
// Bildsignatur, die eingefügt werden soll (GIF, JPEG oder PNG)
$Bildpfad = "logo2.png";
$Grafikdatei = $uploadfile;
$Bilddaten = getimagesize($Grafikdatei);
$OriginalBreite = $Bilddaten[0];
$OriginalHoehe = $Bilddaten[1];
if($OriginalBreite < $ThumbnailBreite)
{
$ThumbnailBreite=$OriginalBreite;
}
$Skalierungsfaktor = $OriginalBreite/$ThumbnailBreite;
$ThumbnailHoehe = intval($OriginalHoehe/$Skalierungsfaktor);
// Neue Grafik erstellen
if($Bilddaten[2] == 2)
{
$Thumbnailgrafik = imagecreatetruecolor($ThumbnailBreite,$ThumbnailHoehe);
}
else
{
$Thumbnailgrafik = imagecreate($ThumbnailBreite,$ThumbnailHoehe);
}
// Bildsignatur einlesen
$Bildinfos = getimagesize($Bildpfad);
switch($Bildinfos[2])
{
case 1:
// GIF-Bild
$Bildsignatur = imagecreatefromgif($Bildpfad);
break;
case 2:
// JPG-Bild
$Bildsignatur = imagecreatefromjpeg($Bildpfad);
break;
case 3:
// PNG-Bild
$Bildsignatur = imagecreatefrompng($Bildpfad);
break;
default:
// Error
die("Bildsignatur ist kein Bild!");
}
// X-Y-Position rechnen
$x = $ThumbnailBreite - $Bildinfos[0];
$y = $ThumbnailHoehe - $Bildinfos[1];
if($Bilddaten[2]==1)
{
$Originalgrafik = ImageCreateFromGIF($Grafikdatei);
ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $ThumbnailBreite, $ThumbnailHoehe, $OriginalBreite, $OriginalHoehe);
ImageCopy($Thumbnailgrafik, $Bildsignatur, $x, $y, 0, 0, $Bildinfos[0], $Bildinfos[1]);
ImageGIF($Thumbnailgrafik, $Grafikdatei);
}
elseif($Bilddaten[2]==2)
{
$Originalgrafik = ImageCreateFromJPEG($Grafikdatei);
ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $ThumbnailBreite, $ThumbnailHoehe, $OriginalBreite, $OriginalHoehe);
ImageCopy($Thumbnailgrafik, $Bildsignatur, $x, $y, 0, 0, $Bildinfos[0], $Bildinfos[1]);
ImageJPEG($Thumbnailgrafik, $Grafikdatei, 85);
}
elseif($Bilddaten[2]==3)
{
$Originalgrafik = ImageCreateFromPNG($Grafikdatei);
ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $ThumbnailBreite, $ThumbnailHoehe, $OriginalBreite, $OriginalHoehe);
ImageCopy($Thumbnailgrafik, $Bildsignatur, $x, $y, 0, 0, $Bildinfos[0], $Bildinfos[1]);
ImagePNG($Thumbnailgrafik, $Grafikdatei);
}
}
## 2
function scaleimage2($ThumbnailBreite){
$Grafikdatei = $_FILES["file"]["tmp_name"];
$Bilddaten = getimagesize($Grafikdatei);
$OriginalBreite = $Bilddaten[0];
$OriginalHoehe = $Bilddaten[1];
if($OriginalBreite < $ThumbnailBreite)
{
$ThumbnailBreite=$OriginalBreite;
}
$Skalierungsfaktor = $OriginalBreite/$ThumbnailBreite;
$ThumbnailHoehe = intval($OriginalHoehe/$Skalierungsfaktor);
if($Bilddaten[2]==1)
{
$Originalgrafik = ImageCreateFromGIF($Grafikdatei);
$Thumbnailgrafik = ImageCreateTrueColor($ThumbnailBreite, $ThumbnailHoehe);
ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $ThumbnailBreite, $ThumbnailHoehe, $OriginalBreite, $OriginalHoehe);
ImageGIF($Thumbnailgrafik, $Grafikdatei);
}
elseif($Bilddaten[2]==2)
{
$Originalgrafik = ImageCreateFromJPEG($Grafikdatei);
$Thumbnailgrafik = ImageCreateTrueColor($ThumbnailBreite, $ThumbnailHoehe);
ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $ThumbnailBreite, $ThumbnailHoehe, $OriginalBreite, $OriginalHoehe);
ImageJPEG($Thumbnailgrafik, $Grafikdatei);
}
elseif($Bilddaten[2]==3)
{
$Originalgrafik = ImageCreateFromPNG($Grafikdatei);
$Thumbnailgrafik = ImageCreateTrueColor($ThumbnailBreite, $ThumbnailHoehe);
ImageCopyResized($Thumbnailgrafik, $Originalgrafik, 0, 0, 0, 0, $ThumbnailBreite, $ThumbnailHoehe, $OriginalBreite, $OriginalHoehe);
ImagePNG($Thumbnailgrafik, $Grafikdatei);
}
}
?>
Es werden die Bilder jedoch normal gespeichert.
Ohne Wasserzeichen und nicht verkleinert!
Wo ist der Fehler?
Danke!