[PHP5] Zwei Bilder gleichzeitig hochladen?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [PHP5] Zwei Bilder gleichzeitig hochladen?

    Hallo,

    Ich habe ein Script mit dem ich ein Bild hochladen u. den Dateinamen in einer DB abspeichern kann. Das funktioniert bestens.

    Nun würde ich gern dieses so umarbeiten, daß das auch mit mehreren (in diesem Fall bis zu 4) Bildern funktioniert.

    Was man machen kann, wenn man das Formular wie folgt erweitert ist, das Php-Script einfach 4 mal hintereinander zu schreiben und dort jeweils statt $picture, $picture1 , $picture2 usw. zu schreiben.

    Das ist nicht schön, verbraucht viel Platz - funktioniert aber.
    Nichtsdestotrotz bin ich weiterhin dankbar für einen Anstoß zu einer schlankeren Lösung.

    Hier ist das Script:

    PHP-Code:
    //Beginning of Uploading Image
        
    $tempname1 $_FILES['picture1']['tmp_name']; 
        
    $pic_name1 $_FILES['picture1']['name']; 
        
        
    $type1 $_FILES['picture1']['type']; 
        
    $size1 $_FILES['picture1']['size']; 
        
        echo 
    $pic_name1 ."<p>";
        
        if(
    $type1 != "image/gif" && $type1 != "image/pjpeg"
        { 
            
    $error[] = "Nur gif und jpeg Dateien dürfen hochgeladen werden."
        } 
        if(
    $size1 "550000"
        { 
            
    $error[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 550 KB!"
        } 
        
        If(empty(
    $error)) { 
        
    move_uploaded_file("$tempname1""../pics/news/$pic_name1");
        
        
    //copy("$tempname", "../pics/news/$pic_name");
        //move_uploaded_file() anstatt copy() bei safe_mode off
        
    echo "Die Datei $pic_name1 wurde erfolgreich hochgeladen!<br><br>";
        } 
        
        else { 
        foreach(
    $error as $meldung
        echo 
    "$meldung<br>"
        } 
        



        
    $tempname2 $_FILES['picture2']['tmp_name']; 
        
    $pic_name2 $_FILES['picture2']['name']; 
        
        
    $type2 $_FILES['picture2']['type']; 
        
    $size2 $_FILES['picture2']['size']; 
        
        echo 
    $pic_name2 ."<p>";
        
        if(
    $type2 != "image/gif" && $type2 != "image/pjpeg"
        { 
            
    $error[] = "Nur gif und jpeg Dateien dürfen hochgeladen werden."
        } 
        if(
    $size2 "550000"
        { 
            
    $error[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 550 KB!"
        } 
        
        If(empty(
    $error)) { 
        
    move_uploaded_file("$tempname2""../pics/news/$pic_name2");
        
        
    //copy("$tempname", "../pics/news/$pic_name");
        //move_uploaded_file() anstatt copy() bei safe_mode off
        
    echo "Die Datei $pic_small_name wurde erfolgreich hochgeladen!<br>";
        } 
        
        else { 
        foreach(
    $error as $meldung
        echo 
    "$meldung<br>"
        } 
        
    //End of Uploading Image 

  • #2
    SCHLEIFEN!!!

    Kommentar


    • #3
      So funkts

      PHP-Code:
      for ($f=0;$f<sizeof($_FILES['picture'])-1;$f++) {   
            if (!empty(
      $_FILES['picture']['name'][$f]) and (!$_FILES['picture']['error'][$f])) {
               
      $dateiupload="Bilder/".$neubildname."_".$f.".jpg";
               
      move_uploaded_file($_FILES['picture']['tmp_name'][$f], $dateiupload);
            }

      Und im Form einfach 4 mal:



      PHP-Code:
      <input class=input_field type=file name=picture[]> 
      So erzeugst du ein Array picture, in dem die übermittelten Werte dann drinnen stehen und wie oben angeführt geprüft werden können.

      Liebe Grüße

      Flohhh

      Kommentar


      • #4
        @Flohhh,

        Besten Dank.

        Kommentar

        Lädt...
        X