Upload von 2 Dateien funktioniert nicht

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

  • Upload von 2 Dateien funktioniert nicht

    Hi,

    ich habe mir ein Upload gebastelt (was ja auch nicht sonderlich schwer war). Solange wie ich nur eine Datei hochladen möchte, ist das kein Problem. Jetzt habe ich das ganze erweitert für 2 Dateien und da funktioniert es nicht mehr.

    Mein Formular sieht so aus:
    Code:
    <form action="<?= $PHP_SELF ?>" method="post" enctype="multipart/form-data">
    	<p><input type="file" name="userfile[]"></p>
    	<p><input type="file" name="userfile[]"></p>
    	<p><input type="submit"></p>
    </form>
    Die Abarbeitung folgendermaßen:
    PHP-Code:
    if ((isset($_FILES['userfile'][0])) && (!$_FILES['userfile']['error'][0])) {
        
    $neuer_Name $DOCUMENT_ROOT.'upload/';
        
    $neuer_Name .= $_FILES['userfile']['tmp_name'][0];
        
        
    move_uploaded_file($_FILES['userfile']['tmp_name'][0], $neuer_Name);
        
    printf("Die Datei %s steht jetzt als ".$neuer_Name." zur Verfügung.<br />\n",

        
    $_FILES['userfile']['name'][0]);
        
        
    printf("Sie ist %u Bytes groß und vom Typ %s.<br />\n",
        
    $_FILES['userfile']['size'][0], $_FILES['userfile']['type'][0]);

    Jetzt müsste er doch eigentlich zumindest die erste Datei hochladen, oder? Aber nichts passiert. Sieht jemand von euch das Problem?

    Schon mal danke für eure Hilfe
    Tschüssi Steffen

  • #2
    PHP-Code:
    print_r($_FILES); 
    schau dir doch mal an, wie das zeug abgelegt is

    und nehm mal testweise die zwei bedingungen in deinem if auseinander und prüf sie einzeln (am besten noch mit gesonderter meldung)
    Zuletzt geändert von mrhappiness; 24.04.2003, 15:57.
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Bekommst du ne Fehlermeldung???
      mfg
      Günni


      Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
      Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
      Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
      City-Tiger - Online durch die Straßen tigern...

      Kommentar


      • #4
        @Günni: Es wird gar nichts ausgegeben.

        @mrhappiness: Als Ausgabe von print_r($_FILES); erscheint:
        PHP-Code:
        Array ( [userfile] => Array ( [name] => Array ( [0] => test1.txt [1] => test2.txt ) [type] =>
        Array ( [
        0] => application/octet-stream [1] => application/octet-stream ) [tmp_name] =>
        Array ( [
        0] => C:\WINDOWS\TEMP\php55.tmp [1] => C:\WINDOWS\TEMP\php56.tmp ) [error] =>
        Array ( [
        0] => [1] => ) [size] => Array ( [0] => 17408 [1] => 17408 ) ) ) 

        Kommentar


        • #5
          das
          PHP-Code:
          isset($_FILES['userfile'][0]) 
          macht für mich auf den ersten blick nicht wirklich einen sinn. oder habe ich da was übersehen.

          müsste es dann nicht
          PHP-Code:
          isset($_FILES['userfile']['name'][0]) 
          heißen?

          wenn du schon die neue schreibweise verwendest, solltest du auch <?= $PHP_SELF ?> im formular ändern.
          PHP-Code:
          <?php $_SERVER["PHP_SELF"?>
          und auch $DOCUMENT_ROOT in
          PHP-Code:
          $_SERVER["DOCUMENT_ROOT"
          Zuletzt geändert von Abraxax; 24.04.2003, 16:26.
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            @Abraxax: Richtig und jetzt klappt es auch. Danke dir.

            Jetzt mal noch eine andere Frage:
            Mittels $_FILES['userfile']['name'] bekomme ich doch den Dateiname der Datei heraus. Ist es möglich, auch die Erweiterung seperat zu bekommen, da ich die Datei gerne unter einem anderen Namen speichern würde, als der User sie hochlädt?

            Nochmals vielen Dank
            Steffen

            Kommentar


            • #7
              in 'name' steht doch der komplette original dateiname drin. also auch mit endung.

              EDIT:
              grrrr. hab das separat überlesen...
              nimm happy's vorschlag.

              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #8
                den teil nach dem letzten punkt auslesen mit substr und strrpos
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  Ok, so geht es auch. Danke euch für eure Hilfe

                  Kommentar

                  Lädt...
                  X