tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
716
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    oldputz1990 oldputz1990 ist offline Mitglied Brokat
    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:
    PHP-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>";





    ?>
    resize.php
    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$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
        
    ImageCopy($Thumbnailgrafik$Bildsignatur$x$y00$Bildinfos[0], $Bildinfos[1]);
        
    ImageGIF($Thumbnailgrafik$Grafikdatei);
    }

    elseif(
    $Bilddaten[2]==2)
    {
        
    $Originalgrafik ImageCreateFromJPEG($Grafikdatei);
        
    ImageCopyResized($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
        
    ImageCopy($Thumbnailgrafik$Bildsignatur$x$y00$Bildinfos[0], $Bildinfos[1]);
        
    ImageJPEG($Thumbnailgrafik$Grafikdatei85);
    }

    elseif(
    $Bilddaten[2]==3)
    {
        
    $Originalgrafik ImageCreateFromPNG($Grafikdatei);
        
    ImageCopyResized($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
        
    ImageCopy($Thumbnailgrafik$Bildsignatur$x$y00$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$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
        
    ImageGIF($Thumbnailgrafik$Grafikdatei);
    }

    elseif(
    $Bilddaten[2]==2)
    {
        
    $Originalgrafik ImageCreateFromJPEG($Grafikdatei);
        
    $Thumbnailgrafik ImageCreateTrueColor($ThumbnailBreite$ThumbnailHoehe);
        
    ImageCopyResized($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
        
    ImageJPEG($Thumbnailgrafik$Grafikdatei);
    }

    elseif(
    $Bilddaten[2]==3)
    {
        
    $Originalgrafik ImageCreateFromPNG($Grafikdatei);
        
    $Thumbnailgrafik ImageCreateTrueColor($ThumbnailBreite$ThumbnailHoehe);
        
    ImageCopyResized($Thumbnailgrafik$Originalgrafik0000$ThumbnailBreite$ThumbnailHoehe$OriginalBreite$OriginalHoehe);
        
    ImagePNG($Thumbnailgrafik$Grafikdatei);
    }


    }

    ?>
     

  2. #2
    campari campari ist offline Mitglied Brokat
    Registriert seit
    Nov 2004
    Beiträge
    267
    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.
     

  3. #3
    CIX88 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.
     

  4. #4
    oldputz1990 oldputz1990 ist offline Mitglied Brokat
    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

  1. Bildupload - Name
    Von flandersX im Forum PHP
    Antworten: 2
    Letzter Beitrag: 01.02.09, 12:35
  2. Bildupload
    Von Lektor21 im Forum PHP
    Antworten: 9
    Letzter Beitrag: 21.02.08, 13:09
  3. Bildupload
    Von wowe58 im Forum PHP
    Antworten: 9
    Letzter Beitrag: 18.11.04, 17:50
  4. Bildupload
    Von 2Pac im Forum PHP
    Antworten: 5
    Letzter Beitrag: 09.06.03, 11:19
  5. Bildupload
    Von MSuter im Forum ASP
    Antworten: 1
    Letzter Beitrag: 06.03.03, 12:13