kostenloser Webspace werbefrei: lima-city


JPG uploaden mit mime-type und bild verkleiner

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    highborn

    highborn hat kostenlosen Webspace.

    Hallo,

    ich brauche Hilfe :( .

    Versuche gerade mir anzueignen, wie man mehrere Bilder (5 Stück) auf einmal hochläd, dazu noch mit der Funktion mime-type überprüft ob es ein JPG ist und das bild auf eine Breite von 320px skaliert.

    Kann mir evtl einer ein paar Code-Schnippsel geben, damit ich die Syntax vom mime-type und das mit dem skalieren kapiere?

    Kann ich das so schreiben?:
    if ( $_FILES['datei1']['tmp_name'] != "") {



    dann hab ich ja 5 dateien ich hätte jetzt gern folgendes


    Erster Schleifendurchlauf:
    for ($i=0; $i<5; $i++) { 
    	  if ( $_FILES['datei1']['tmp_name'] != "") {


    Zweiter Schleifendurchlauf:
    for ($i=0; $i<5; $i++) { 
    	  if ( $_FILES['datei2']['tmp_name'] != "") {
    und so weiter.

    Wie kann ich denn das machen?

    Beitrag zuletzt geändert: 27.11.2010 0:39:17 von highborn
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Bild skalieren

    codes zum skalieren (mit der php-eigenen gd-library) findest Du hier:
    http://de.php.net/manual/de/function.imagecopyresampled.phpund hier:
    http://de.php.net/manual/de/function.imagecopyresized.php
    Eine liste aller gd-Befehle findest Du hier:
    http://de.php.net/manual/de/ref.image.php

    Ich habe mal einen Code rausgesucht und geändert, so das ein 320px breites Bild dabei herauskommen sollte:
    <?php
    // The file
    $filename = 'test.jpg';
    
    // Set a maximum height and width
    $width = 320;
    
    
    // Content type
    header('Content-type: image/jpeg');
    
    // Get new dimensions
    list($width_orig, $height_orig) = getimagesize($filename);
    
    $ratio_orig = $width_orig/$height_orig;
    
    
       $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);
    ?>


    -kopiere den Code 1:1 in eine neue Datei
    -gib der Datei einen Namen mit .php am ende & lade sie auf Deine Homepage
    -lege im selben Ordner eine jpeg-Datei mit dem Namen test.jpg
    -öffne deine php-Datei mit einem Browser, Du solltest das skalierte Bild sehen.

    Um die Datei als neue Bilddatei zu speichern ersetze die letzte Zeile durch diesen Code:

    imagejpeg($image_p, 'namederneuendatei.jpg', 100);



  4. Autor dieses Themas

    highborn

    highborn hat kostenlosen Webspace.

    okay danke für den Code, habe ungefähr so vorgehabt umzusetzen.


    Aber im mom geht es um das hochladen. Ausserdem hab ich ja 5 Dateien.

    Funktionsweis:
    Also man soll 5 Dateien anwählen können
    Wenn das Feld nicht Leer ist, dann soll er das Bildhochladen.
    Maximale Größe des Bildes 250kb.
    Name der Bilder: pic1.jpg, pic2.jpg, pic3.jpg usw.
    Anschließend soll das Bild verkleinert werden und überschrieben abgespeichert werden.
    Was ich zusätzlich noch einbauen werde, das er pic1.jpg nochmal verkleinert und in einem neuen Ordner abspeichert.


    So zum hochladen der 5 Dateien möchte ich eine Schleife benutzen. Weiß nicht wie ich das anderst machen soll.
    Dazu sollte ich wissen, ob meine Codeschnippsel von oben richtig sind.


    Vielen dank :)
  5. 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!