ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
716
716
EMPFEHLEN
-
18.09.07 17:47 #1
- Registriert seit
- Sep 2006
- Beiträge
- 256
Hallo!
Ich benutze zum Hochladen meiner Fotos "MultiPowUpload".
In letzter Zeit fällt mir auf, dass manche Bilder nicht hochgeladen werden.
Ich weiß aber nicht wiso.
Meistens sind es große Fotos...
Ich weiß einfach nicht mehr weiter...
Vl. könnt ihr mal drüberschaun...
Danke!
Die Fotos werden hier ausgearbeitet:
resize.phpPHP-Code:
<?php
error_reporting(E_ALL);
// 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']);
}
else
{
$ord = 'error';
}
$teile = explode("-", $ord);
$album = $teile[0];
$uploaddir = dirname($_SERVER['SCRIPT_FILENAME'])."/fotos/".$album."/";
$uploaddir_small = dirname($_SERVER['SCRIPT_FILENAME'])."/fotos/".$album."/small/";
$uploaddir_middle = dirname($_SERVER['SCRIPT_FILENAME'])."/fotos/".$album."/middle/";
$uploaddir_big = dirname($_SERVER['SCRIPT_FILENAME'])."/fotos/".$album."/big/";
$target_encoding = "ISO-8859-1";
echo '<pre>';
if(count($_FILES) > 0)
{
$arrfile = pos($_FILES);
$type1 = explode(".", $arrfile['name']);
$type = $type1[1];
include("resize.php");
// Query für eintragen in DB
$insert = mysql_query("INSERT INTO `fotos-view` (`album`, `type`) VALUES ('$album', '$type')") OR DIE(mysql_error());
$abfrage = mysql_query("SELECT `id` FROM `fotos-view` ORDER by `id` DESC LIMIT 1") OR DIE(mysql_error());
$abfrage_erg = mysql_fetch_assoc($abfrage);
$name = $abfrage_erg['id'];
$uploadfile = $uploaddir . iconv("UTF-8", $target_encoding,basename($arrfile['name']));
$uploadfile_small = $uploaddir_small . iconv("UTF-8", $target_encoding,basename("$name.$type"));
$uploadfile_middle = $uploaddir_middle . iconv("UTF-8", $target_encoding,basename("$name.$type"));
$uploadfile_big = $uploaddir_big . iconv("UTF-8", $target_encoding,basename("$name.$type"));
scaleimage2(1024);
if (copy($arrfile['tmp_name'], $uploadfile_big))
echo "File is valid, and was successfully uploaded.\n";
scaleimage(650);
if (copy($arrfile['tmp_name'], $uploadfile_middle))
echo "File is valid, and was successfully uploaded.\n";
scaleimage2(150);
if (move_uploaded_file($arrfile['tmp_name'], $uploadfile_small))
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>";
?>
PHP-Code:
<?php
function scaleimage($ThumbnailBreite){
// Bildsignatur, die eingefügt werden soll (GIF, JPEG oder PNG)
$Bildpfad = "logo2.png";
$tmparr = pos($_FILES);
$Grafikdatei = $tmparr['tmp_name'];
$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){
$tmparr = pos($_FILES);
$Grafikdatei = $tmparr['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);
}
}
?>
-
Ohne dass ich jetzt Dein Script angeschaut habe...evtl verhindern einfach die Einstellungen von memory_limit, upload_max_filesize und post_max_size in der php.ini das Hochladen grosser Bilder.
-
19.09.07 08:15 #3CIX88 Tutorials.de Gastzugang
... oder sind einfach in ihrer Breite und Höhe zu groß, womit memory_limit überschritten wird.
Alles Dinge die man aber selber herausfinden kann.
-
19.09.07 15:09 #4
- Registriert seit
- Sep 2006
- Beiträge
- 256
Hallo!
Danke für euere Antworten.
Server: 16mb Memory limit
Ich habe soeben probiert, kleine Fotos hochzuladen (50kb)
funktioniert ebenfalls nicht.
Am Localhost (Memory_limt: 32mb) funktioniets allerdings schon?!
Hier die PHP info vom Server ( 16mb memory limit)
http://surl.se/ecdu
...
Ähnliche Themen
-
Bildupload - Name
Von flandersX im Forum PHPAntworten: 2Letzter Beitrag: 01.02.09, 12:35 -
Bildupload
Von Lektor21 im Forum PHPAntworten: 9Letzter Beitrag: 21.02.08, 13:09 -
Bildupload
Von wowe58 im Forum PHPAntworten: 9Letzter Beitrag: 18.11.04, 17:50 -
Bildupload
Von 2Pac im Forum PHPAntworten: 5Letzter Beitrag: 09.06.03, 11:19 -
Bildupload
Von MSuter im Forum ASPAntworten: 1Letzter Beitrag: 06.03.03, 12:13





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren