Schnaps: Hochgeladenes Bild "on the Fly" verkleinern

Servus

Ich habe ein Script in dem ich unteranderem Bilder hochladen lasse nach folgendem Code. (Was auch alles funktioniert wie geplant)

################################################################
if (empty($_FILES['bild']['name'])){
 $_FILES['bild']['name']="movie_ohne_bild.gif";
}
else{
 $uploaddir = '/ordner/upload_bilder/';
 $uploadfile = $uploaddir . $_FILES['bild']['name'];

if (move_uploaded_file($_FILES['bild']['tmp_name'], $uploadfile)) {
    print "<h3>Bild wurde hochgeladen</h3><br><br><br>";

}
 else {
    print "<h3>Fehler beim Bilder Upload!!!<br><bt></h3>\n";
 }
}
################################################################

Ich brauche die Bilder aber später immer nur in einer Größe von (Breite 100 px X Höhe 140 px), gibt es nun  eine Möglichkeit die Bilder während ich sie hochlade direkt in diese Größe zu konvertieren um Speicherplatz zu sparen und die Seite später schneller aufbauen zu können?

gdlib2.0  (hoffe das es so ähnlich heißt)  habe ich auf meinem Webspace kenne mich mit den spezifischen funktionen dafür leider nicht aus.

Vielen Dank schon mal für eure Hilfe

Gruß
Schnaps

  1. Moin,

    gdlib2.0  (hoffe das es so ähnlich heißt)  habe ich auf meinem Webspace kenne mich mit den spezifischen funktionen dafür leider nicht aus.

    imagecopyresize() http://de.php.net/manual/de/function.imagecopyresized.php
    Kannst du aber erst anwenden, wenn das vollständige Bild auf dem Server ist. Also nach dem Upload. Anschließend kannst du das Originalbild löschen.

    Lies dir auch unbedingt die anderen Funktionen zu GD durch.
    http://de.php.net/manual/de/ref.image.php

    --
    Gruss Martin
    1. Moin!

      imagecopyresize() http://de.php.net/manual/de/function.imagecopyresized.php

      imagecopyresampled() ist besser, weil es Antialiasing kann -> bessere Qualität.

      Kannst du aber erst anwenden, wenn das vollständige Bild auf dem Server ist. Also nach dem Upload. Anschließend kannst du das Originalbild löschen.

      Das gesamte PHP-Skript wird sowieso erst gestartet, wenn die Dateien alle hochgeladen sind und zur Verfügung stehen. Und alle hochgeladenen, aber nicht geretteten Dateien werden am Skriptende auch wieder gelöscht.

      Lies dir auch unbedingt die anderen Funktionen zu GD durch.
      http://de.php.net/manual/de/ref.image.php

      Das ist immer eine gute Idee. Noch als Tipp: Truecolor-Bilder mit imagecreatetruecolor() erzeugen, dann werden deine Bilder nicht auf 256 Farben reduziert (was ziemlich mies aussehen kann).

      - Sven Rautenberg