kostenloser Webspace werbefrei: lima-city


Nach Upload Bilder verkleinern

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    simsobjekts

    Kostenloser Webspace von simsobjekts, auf Homepage erstellen warten

    simsobjekts hat kostenlosen Webspace.

    Hallo @all

    Ich möchte gernen das meine Bilder nach dem Upload verkleinert werden. Kann mir das jmd Helfen.
    Wichitge Infos wie Code stehen hier http://www.lima-city.de/thread/nach-dem-upload-pfad-ausgeben

    würde mich über jede Hilfe freuen

    gruß
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Dazu kannst du die Funktion imagecopyresized() benutzen!

    LG cookies
  4. Autor dieses Themas

    simsobjekts

    Kostenloser Webspace von simsobjekts, auf Homepage erstellen warten

    simsobjekts hat kostenlosen Webspace.

    Dankeschön:-), kannst du mir da ein kleinen Ansatz geben?
  5. 1. Bild zwischenspeichern
    2. per imageCreateFromXxx() laden (= Bild1)
    3. neues Bild mit imageCreate(gewünschteBreite, gewünschteHöhe) erstellen (= Bild2)
    4. gesamtes Bild1 mit imageCopyResized() in Bild2 kopieren
    5. Bild2 mit imageXxx() in Datei speichern

    PS: Mit dem Xxx ist PNG / GIF / JPEG / ... gemeint, je nachdem von welchem Typ das Bild ist.

    LG cookies

    Beitrag zuletzt geändert: 26.10.2009 16:51:32 von cookies
  6. Ich würde statt imagecopyresized() lieber imagecopyresampled() verwenden. Macht im Prinzip das Gleiche, nur dass die Qualität wesentlich besser ist. Allerdings ist die Funktion auch ein bisschen langsamer, weswegen man bei großen Bildern beide Funktionen kombinieren sollte.
  7. Autor dieses Themas

    simsobjekts

    Kostenloser Webspace von simsobjekts, auf Homepage erstellen warten

    simsobjekts hat kostenlosen Webspace.

    habe mir hier mal das beispiel angekuckt...wenn Resample kommt stehe ich im regen!
    <?php
    // The file
    $filename = 'test.jpg';
    
    // Set a maximum height and width
    $width = 200;
    $height = 200;
    
    // Content type
    header('Content-type: image/jpeg');
    
    // Get new dimensions
    list($width_orig, $height_orig) = getimagesize($filename);
    
    $ratio_orig = $width_orig/$height_orig;
    
    if ($width/$height > $ratio_orig) {
       $width = $height*$ratio_orig;
    } else {
       $height = $width/$ratio_orig;
    }
    
    // Resample
    $image_p = imagecreatetruecolor($width, $height);
    $image = imagecreatefromjpeg($filename);
    imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
    
    // Output
    imagejpeg($image_p, null, 100);
    ?>


  8. // Resample
    $image_p = imagecreatetruecolor($width, $height); //=> neues, leeres Bild wird erstellt
    $image = imagecreatefromjpeg($filename); //=> das zwischengespeicherte Bild wird eingelesen
    imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); //=> das zweite Bild wird in das Erste kopiert
    
    // Output
    imagejpeg($image_p, 'DATEINAME_DES_ZIELBILDES', 100); //=> Das Bild wird gespeichert in DATEINAME_DES_ZIELBILDES


    LG cookies
  9. Autor dieses Themas

    simsobjekts

    Kostenloser Webspace von simsobjekts, auf Homepage erstellen warten

    simsobjekts hat kostenlosen Webspace.

    Danke Cookies,Ich bekomme kryptische zahlen/Zeichen:-)

    �����JFIF������������ᐼ#�����J?ᐼ#�����J�K��'������I�S����?�'������I�S����?ռO�a�

    <?php 
     // Set a maximum height and width
    $width = 200;
    $height = 200;
    $tempname = $_FILES['file']['tmp_name']; 
    $name = $_FILES['file']['name']; 
    $type = $_FILES['file']['type']; 
    $size = $_FILES['file']['size'];  
    if($type != "image/gif" && $type != "image/jpeg"  && $type != "image/tiff" && $type != "image/png" && $type != "image/bmp") { 
        $err[] = "nur gif,jpeg,tiff,png und bmp  Dateien dürfen hochgeladen werden."; 
    } 
    if($size > "5000000") { 
        $err[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 5 MB!"; 
    }  
    if(empty($err)) { 
        list($width_orig, $height_orig) = getimagesize($tempname);
    
    $ratio_orig = $width_orig/$height_orig;
    
    if ($width/$height > $ratio_orig) {
       $width = $height*$ratio_orig;
    } else {
       $height = $width/$ratio_orig;
    }
    $image_p = imagecreatetruecolor($width, $height); // neues, leeres Bild wird erstellt
    $image = imagecreatefromjpeg($tempname); //=> das zwischengespeicherte Bild wird eingelesen
    imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); //=> das zweite Bild wird in das Erste kopiert
    
    // Output
    imagejpeg($image_p, null, 100); //=> Das Bild wird gespeichert in DATEIN
    
    // Output
    imagejpeg($image_p, null, 100);
        echo "Die Datei $name wurde erfolgreich hochgeladen!";
    	echo"<br/>";
     echo "http://simsobjekts.lima-city.de/bilder/" . $name; //http://simsobjekts.lima-city.de/bilder/
    	
    } 
    else { 
        foreach($err as $error) 
        echo "$error<br>"; 
    } 
    ?>


    Beitrag zuletzt geändert: 26.10.2009 18:41:36 von simsobjekts
  10. <?php 
     // Set a maximum height and width
    $width = 200;
    $height = 200;
    $tempname = $_FILES['file']['tmp_name']; 
    $name = $_FILES['file']['name']; 
    $type = $_FILES['file']['type']; 
    $size = $_FILES['file']['size'];  
    if($type != "image/gif" && $type != "image/jpeg"  && $type != "image/tiff" && $type != "image/png" && $type != "image/bmp") { 
        $err[] = "nur gif,jpeg,tiff,png und bmp  Dateien dürfen hochgeladen werden."; 
    } 
    if($size > "5000000") { 
        $err[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 5 MB!"; 
    }  
    if(empty($err)) { 
        list($width_orig, $height_orig) = getimagesize($tempname);
    
    $ratio_orig = $width_orig/$height_orig;
    
    if ($width/$height > $ratio_orig) {
       $width = $height*$ratio_orig;
    } else {
       $height = $width/$ratio_orig;
    }
    $image_p = imagecreatetruecolor($width, $height); // neues, leeres Bild wird erstellt
    $image = imagecreatefromjpeg($tempname); //=> das zwischengespeicherte Bild wird eingelesen
    imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); //=> das zweite Bild wird in das Erste kopiert
    
    // Output
    imagejpeg($image_p, null, 100); //=> Das Bild wird gespeichert in DATEIN
    
    // Output
    imagejpeg($image_p, 'DATEINAME', 100);
        echo "Die Datei $name wurde erfolgreich hochgeladen!";
    	echo"<br/>";
     echo "http://simsobjekts.lima-city.de/bilder/" . $name; //http://simsobjekts.lima-city.de/bilder/
    	
    } 
    else { 
        foreach($err as $error) 
        echo "$error<br>"; 
    } 
    ?>

    Du musst bei imageJPEG statt null den Ziel-Dateinamen angeben.

    LG cookies
  11. Autor dieses Themas

    simsobjekts

    Kostenloser Webspace von simsobjekts, auf Homepage erstellen warten

    simsobjekts hat kostenlosen Webspace.

    und was ist wenn sich der Datei Name nicht ändern soll?, sondern von dem Bild1 übernehmen soll
  12. simsobjekts schrieb:
    und was ist wenn sich der Datei Name nicht ändern soll?, sondern von dem Bild1 übernehmen soll


    Dann gibst du dort einfach auch den gleichen Dateinamen an, dann wird das Bild überschrieben.

    LG cookies
  13. Autor dieses Themas

    simsobjekts

    Kostenloser Webspace von simsobjekts, auf Homepage erstellen warten

    simsobjekts hat kostenlosen Webspace.

    aber der Name des Bildes ist doch Relative:confused: sprich immer anders oder mache ich das mit $name?

    Edit: Es funtzt so DANKE

    Beitrag zuletzt geändert: 26.10.2009 19:48:03 von simsobjekts
  14. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!