[PHP] Problem beim Bild verkleinern / hochladen

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Upperon, 21. Juni 2009 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 21. Juni 2009
    Zuletzt von einem Moderator bearbeitet: 15. April 2017
    Problem beim Bild verkleinern / hochladen

    Hi Leute

    Ich versuche gerade ein Script zu schreiben, welches es dem Benutzer erlaubt eigene Bilder hochzuladen. Dabei soll es vergrössert/verkleinert werden, damit es ein bestimmtes Maß hat.
    Das hochladen und vergrössern/verkleinern funktioniert soweit, nur dass es dabei des öfteren zu Farbverlusten kommt :-(

    Hier mal mein Ausschnitt ausm Script:
    PHP:
    if( $action == 'upload' ){
            
    $savpfad  'userbilder/kundenbilder/' ;
             
    $dateiname = $HTTP_POST_FILES [ 'datei' ][ 'name' ];
             if (
    $dateiname == '' ){
                     
    $fehlermeldung = '<div style="width:100%; text-align:left; color:#FF0000;"><b>Fehlermeldung:</b><br />
                                                Es wurde keine Datei ausgewählt!
                                                </div>'
    ;
                      exit;
             }
             
    $endung  substr ( $dateiname , - 4 );
             
    $tempdatei = $savpfad . $dateiname ;
             
    $zufall  rand ( 1000000 , 9999999 );
             
    $tempdatei = $savpfad . $zufall . $endung ;
             
    $dateiname = $zufall . $endung ;
             
    copy ( $datei $savpfad . $dateiname );
               
    $PicPathIn = $savpfad ;
               
    $PicPathOut = $savpfad ;
               
    // Orginalbild
               
    $bild = $dateiname ;
               
    // Bilddaten feststellen
               
    $size = getimagesize ( " $PicPathIn " . " $bild " );
               
    $breite = $size [ 0 ];
               
    $hoehe = $size [ 1 ];
               
    $neueBreite = 578 ;
               
    $neueHoehe = 374 ;

               if(
    $size [ 2 ]== 1 ) {
               
    // GIF
               
    $altesBild = ImageCreateFromGIF ( " $PicPathIn " . " $bild " );
               
    $neuesBild = ImageCreate ( $neueBreite , $neueHoehe );
               
    ImageCopyResized ( $neuesBild , $altesBild , 0 , 0 , 0 , 0 , $neueBreite ,
             
    $neueHoehe , $breite , $hoehe );
               
    ImageGIF ( $neuesBild , $PicPathOut . $bild );
               }

               if(
    $size [ 2 ]== 2 ) {
               
    // JPG
               
    $altesBild = ImageCreateFromJPEG ( " $PicPathIn " . " $bild " );
               
    $neuesBild = ImageCreate ( $neueBreite , $neueHoehe );
               
    ImageCopyResized ( $neuesBild , $altesBild , 0 , 0 , 0 , 0 , $neueBreite ,
             
    $neueHoehe , $breite , $hoehe );
               
    ImageJPEG ( $neuesBild , $PicPathOut . $bild );
               }

               if(
    $size [ 2 ]== 3 ) {
               
    // PNG
               
    $altesBild = ImageCreateFromPNG ( " $PicPathIn " . " $bild " );
               
    $neuesBild = ImageCreate ( $neueBreite , $neueHoehe );
               
    ImageCopyResized ( $neuesBild , $altesBild , 0 , 0 , 0 , 0 , $neueBreite ,
             
    $neueHoehe , $breite , $hoehe );
               
    ImagePNG ( $neuesBild , $PicPathOut . $bild );
               }
             
    $_SESSION [ 'bg_image' ] =  $PicPathOut . $bild ;
    }
    Das ist das Originalbild:
    a1.jpg
    {img-src: //comicdb.co.funpic.de/userbilder/kundenbilder/a1.jpg}


    Und so sieht es nach dem hochladen aus:
    7616763.jpg
    {img-src: //comicdb.co.funpic.de/userbilder/kundenbilder/7616763.jpg}


    Habt Ihr ne Idee an was das liegen kann?

    Ich habe schonmal in den Bilddetails nachgeguckt, aber beide scheinen eine Farbtiefe von 24bit zu haben
     
  2. 22. Juni 2009
    AW: Problem beim Bild verkleinern / hochladen

    Probier mal
    PHP: imagecreatetruecolor - Manual

    anstatt ImageCreate....
     
  3. 22. Juni 2009
    AW: Problem beim Bild verkleinern / hochladen


    Vielleicht hilfts, aber ich hab auch mit ImageCreate schon Top Bilder verkleinert. Allerdings sehe ich grade auch nichts, was irgendwie falsch wäre. Kenne mich mit den Bildbearbeitungsfunktionen von PHP allerdings auch nicht so gut aus.


    Gruß Blackbird
     
  4. 22. Juni 2009
    Zuletzt von einem Moderator bearbeitet: 15. April 2017
    AW: Problem beim Bild verkleinern / hochladen

    Hier wurde mir mal geholfen und ich hab diese Probleme nicht, vielleicht schaust dus dir mal an.
     
  5. 22. Juni 2009
    AW: Problem beim Bild verkleinern / hochladen


    Jup, das war der ausschlaggebende Tip ^^

    Jetzt funzt alles super!!

    BIG THX, BW ist gerade für Dich rausgegangen.

    Thread kann also geschlossen werden
     
  6. 22. Juni 2009
    AW: Problem beim Bild verkleinern / hochladen

    Sorry, hat sich erledigt
     
  7. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.