Ich habe Probleme mit dem upload mehrerer Dateien

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

  • Ich habe Probleme mit dem upload mehrerer Dateien

    Hallo, es wird der Fehler ausgegeben das die dateien nicht den MimeTypes entsprechen. aber dem upload von einzelnen dateien habe ich es hinbekommen:

    hier der code:

    PHP-Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

    <html>
    <head>
     <meta name="generator" content="Scribe! 2 [[url]http://scribe.de[/url]]">
     <title>Unbenannt</title>
    </head>

    <body>


    <?php   
    $error
    =array();
    //Teil 1: Eingabeüberprüfungen, falls nicht erster Aufruf des Formulars
    if($_SERVER["REQUEST_METHOD"]=="POST")  //erster Aufruf:  ==GET
    {       

    //pruefung wurde rausgenommen
              
    }   

    //Teil 2: Formular ausgeben beim ersten Aufruf oder fehlerhafte Eingaben:
    if($_SERVER["REQUEST_METHOD"]=="GET" || count($error)>0)
    {
    ?>
    <form enctype="multipart/form-data" action="<?php echo $_SERVER["PHP_SELF"];?>" method="post">

    <table border="1">

      <tr>
       <td colspan="3">Bild 1: <input type="hidden" name="MAX_FILE_SIZE" value="3000000"> 
        <input name="userfile[]" type="file"><br> 
        </td>
      </tr>
      <tr>
          <td colspan="3">Bild 2: <input type="hidden" name="MAX_FILE_SIZE" value="3000000"> 
        <input name="userfile[]" type="file"><br> 
        </td>

      </tr>
      <tr>
          <td colspan="3">Bild 3: <input type="hidden" name="MAX_FILE_SIZE" value="3000000"> 
        <input name="userfile[]" type="file"><br> 
        </td>

      </tr>
      <tr>
          <td colspan="3">Bild 4: <input type="hidden" name="MAX_FILE_SIZE" value="3000000"> 
        <input name="userfile[]" type="file"><br> 
        </td>

      </tr>
      <tr>
         <td colspan="3">Bild 5: <input type="hidden" name="MAX_FILE_SIZE" value="3000000"> 
        <input name="userfile[]" type="file"><br> 
        </td>

      </tr>
      <tr>
          <td colspan="3">Bild 6: <input type="hidden" name="MAX_FILE_SIZE" value="3000000"> 
        <input name="userfile[]" type="file"><br> 
        </td>

      </tr>
     
     <tr>
     <td colspan="3">
     <input type="submit" value="Speichern" /> <input type="reset" />
     </td>
     </tr>

    </table> 


    </form> 

       <?php
       
      
    }
      else{   
      
    //Teil 3 Daten sind korrekt ausgef&uuml;llt, also werden sie gespeichert!  
          
    echo "Die Daten sind korrekt ausgef&uuml;llt und werden gespeichert<br />";
          
          
          
    /////Bilder Werden hochgeladen
          // In PHP kleiner als 4.1.0 sollten Sie $HTTP_POST_FILES anstatt $_FILES verwenden. 
        // In PHP kleiner als 4.0.3 verwenden man copy() und is_uploaded_file() anstatt von 
        // move_uploaded_file() 

        //Deklaration der gültigen mimetypen 
        
    $mimearray=array("image/gif""image/jpeg""image/pjpeg","image/x-png","image/png");

        
    //Upload verzeichnis 
        
    $uploaddir '../upload/'

        
    //Prüfen ob Formular gesendet wurde 

           // Prüfung auf Gültigkeit des Vordeklarierten MimeTyps 
                   
    if(in_array($_FILES['userfile']['type'],$mimearray)) 
               {         
               
             foreach (
    $_FILES["pictures"]["error"] as $key => $error
             {
                   if (
    $error == UPLOAD_ERR_OK
                   {

                          
    // dateiupload 
                                            
    if (move_uploaded_file($_FILES['userfile']['tmp_name'][$key], $uploaddir $_FILES['userfile']['name'][$key])) 
                                            { 
                
                
                
                                          echo 
    "Datei ist gültig und wurde erfolgreich hochgeladen. <br>Debugginginfo:\n"
                                          echo 
    "<br>"
                                    echo 
    "Name: ".$_FILES['userfile']['name'][$key]."<br>"
                                          echo 
    "Size: ".$_FILES['userfile']['size'][$key]."<br>";    
                                          echo 
    "Mime: ".$_FILES['userfile']['type'][$key]."<br>";            
                                          }
                                          else{ 
                                          
    // Fehler beim Dateiupload 
                                          
    echo "Fehler beim Dateiupload"
                                          }             
                               }
                     }
               }else{ 
           
    //Fehlermeldung wenn Datei nicht den vordeklarierten MimeTypes entspricht 
           
    echo $_FILES['userfile']['name'][$key]." - ".$_FILES['userfile']['type'][$key]." ist nicht für den Upload gesattet"
           
           }  
    }
    ?>


    </body>
    </html>

    danke in voraus!

  • #2
    Du musst den Code zum "Prüfen" des Typ schon in die Schleife schreiben ...
    Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

    Kommentar

    Lädt...
    X