formularfelder als array empfangen

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

  • formularfelder als array empfangen

    hallo vielleicht könnt ihr mir bei folgendem problem helfen. habe ein formular zum uploaden von dateien und im script folgende zeilen:

    move_uploaded_file($_FILES['foto_d1']['tmp_name'], $uploaddir . $_FILES['foto_d1']['name']);
    move_uploaded_file($_FILES['foto_d2']['tmp_name'], $uploaddir . $_FILES['foto_d2']['name']);
    move_uploaded_file($_FILES['foto_d3']['tmp_name'], $uploaddir . $_FILES['foto_d3']['name']);
    move_uploaded_file($_FILES['foto_d4']['tmp_name'], $uploaddir . $_FILES['foto_d4']['name']);

    um nicht alle deitein einzeln durchgehen zu müssen, für spätere überprüfungskonditionen dachte ich mir folgendes zu machen (die formularfelder heissen jetzt alle foto_d[]):

    $i = 0;

    while($i<=8) {

    move_uploaded_file($_FILES['foto_d[$i]']['tmp_name'], $uploaddir . $_FILES['foto_d[$i]']['name']);
    $i++;
    }

    aber irgendwie scheint da noch was zu fehlen. bin dankbar für eure hilfe.

  • #2
    ins Blaue geschossen:

    $_FILES[$i]['foto_d']['tmp_name']

    aber ich hab gestern zuviel erwischt - steh grad etwas neben mir... ansonsten gibt var_dump($_FILES) recht freundlich über den aufbau des Arrays Auskunft.
    Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
    Schön - etwas Geschichte kann ja nicht schaden.
    Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

    Kommentar


    • #3
      Re: formularfelder als array empfangen

      wohl eher so oder nicht?! *keine Checkung hat was das zusätzliche [] darin sollte*
      PHP-Code:
      $i 0;

      while(
      $i<=8) {

      move_uploaded_file($_FILES['foto_d'.$i]['tmp_name'], $uploaddir $_FILES['foto_d'.$i]['name']);
      $i++;

      btw. ein for ist schöner ^^,
      PHP-Code:
      for ($i 0$i <= 8; ++$i) {
       
      code()


      Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

      bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
      Wie man Fragen richtig stellt

      Kommentar


      • #4
        Re: Re: formularfelder als array empfangen

        eventuell sogar
        PHP-Code:
        for ($i 0$count count($_FILES)-1$i <= $count; ++$i

        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
        Wie man Fragen richtig stellt

        Kommentar


        • #5
          @ghostgambler

          super, vielen dank beide varianten funzen.

          Kommentar


          • #6
            Dank' ghostgambler lieber nicht zu früh ...

            Auch wenn Quetschi's Vorschlag nicht ganz korrekt war (ich meine $_FILES['foto_d']['tmp_name'][$i] wäre richtiger), war dieser jedoch um Welten besser als der, eher unterbelichtete, Vorschlag von ghostgambler ... klar das er "*keine Checkung hat was das zusätzliche [] darin sollte*" ... so war er schon immer ... .

            Setz' einfach die Inputs auf <input name="foto_d[color=red][][/color]" ... und alles wird gut ... !
            carpe noctem

            [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
            [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

            Kommentar


            • #7
              Setz' einfach die Inputs auf <input name="foto_d[]" ... und alles wird gut ... !
              hatte ich schon gemacht.

              bin ja nur php-anfänger kann nur sagen dass die beiden varianten von ghostgambler funzen aber nicht die von goth u. Quetschi.

              bin aufjeden dankbar für eure hilfe

              Kommentar


              • #8
                Re: formularfelder als array empfangen

                sach mal goth, hast du was persönlich gegen mich oder kotzt du mich nur zum Spaß ständig von der Seite an?


                Soll ich dir sagen worauf ich geguckt habe?

                DARAUF
                move_uploaded_file($_FILES['foto_d1']['tmp_name'], $uploaddir . $_FILES['foto_d1']['name']);
                move_uploaded_file($_FILES['foto_d2']['tmp_name'], $uploaddir . $_FILES['foto_d2']['name']);
                move_uploaded_file($_FILES['foto_d3']['tmp_name'], $uploaddir . $_FILES['foto_d3']['name']);
                move_uploaded_file($_FILES['foto_d4']['tmp_name'], $uploaddir . $_FILES['foto_d4']['name']);
                UND DANACH HABE ICH MEIN FOR GEMACHT


                Sag nicht einfach dass meine Posts scheiße sind, wenn du auch keine Checkung hast und gewöhn die in Gottes Namen einen FREUNDLICHEREN Ton an!
                Etwas Anstand kann einigen Mods hier auch nicht schaden...und du bist den anderen um Meilen voraus auf Platz 1...

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar


                • #9
                  Sach mal bist Du vollkommen dumm ... derjenige der hier keine Checkung hat(te) und einen vollkommen dämlichen Vorschlag dazu warst Du ... niemand sonst ... und mein Ton ist meiner ... nicht Deiner ... !

                  Langsam habe ich wirklich was gegen Dich ... Du bist ja nur hohl ... !
                  carpe noctem

                  [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                  [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                  Kommentar


                  • #10
                    @ghostgambler, ich schlage vor, du liest den 1. Post, deine Antwort und die Antwort von goth in Ruhe durch, dann wirst du feststellen, dass du Unrecht hast.

                    Was allerdings der Threadstarter geändert, gemacht hat, bleibt mir noch ein Rätsel, denn wenn er die Eingabefelder in bild_d[] umbenannt hat, dann kann deine Lösung niemals funktionieren. Prüfe selbst nach, wenn du nicht glaubst. Deine Version kann nur funktionieren, wenn die Namen bild_d1, .... bild_dx heissen.

                    Kommentar


                    • #11
                      sorry leute, ich weiss nicht was gestern los war, da hat die variente von ghostgambler gefunzt (ich schwöre es waren keine tüten oder bierchen im spiel). heute sieht das ganze aber ander aus, keine ahnung warum. muss allerdings auch sagen dass mich der ton von goth etwas erschrocken hat aber da sind vielleicht noch geschichten im spiel die ich nicht kenne und die auch nicht in diesen thread gehören.

                      zur sachlichen aufklärung:

                      die zeilen in meinem formular sehen alle so aus:

                      <TR>
                      <TD>Foto detalle3:</TD>
                      <TD>archivo (.jpg/.gif):</TD>
                      <TD><input type='file' name='foto_d[]'></TD>
                      </TR>

                      und die zeilen die heute funzen:

                      <?php
                      $uploaddir = "../images/";

                      for ($i = 0; $i <= 8; ++$i)
                      {

                      move_uploaded_file($_FILES['foto_d']['tmp_name'][$i], $uploaddir . $_FILES['foto_d']['name'][$i]);

                      }

                      ?>

                      auf alle fälle blicke ich jetzt schon ein wenig mehr zum thema und kann weiter dran rumbasteln bis zur nächsten frage. danke für eure tips.

                      Kommentar


                      • #12
                        Wenns gestern so funktioniert hat dann hab ich mal folgende Vermutung:

                        Im Browser war noch das Upload-Form in dem die Inputs diese Namen hatten (vermutlich hast du immer den Zurück-Button benutzt): 'foto_d1', 'foto_d2'... usw... ist eigentlich die einzige Erklärung warum ghostgamblers Vorschlag hingehauen hat.

                        Heute hat dein Browser das Upload-Form neu geladen und vorbei wars. Die Variante von goth ist auf alle Fälle zu bevorzugen.
                        Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                        Schön - etwas Geschichte kann ja nicht schaden.
                        Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                        Kommentar


                        • #13
                          genauso war's ...

                          Kommentar


                          • #14
                            gut, mein Fehler dass ich die Klammer überlesen hatte

                            aber goths/dein Ton war, bzw. ist, trotzdem für den Arsch und sollte sofort eine Tracht Prügel nach sich ziehen, wo er/du ja Mod ist/bist

                            Sarkasmus ist ja in jeglichen Computer-Foren Standard, aber das war schon pure Beleidigung und so nicht akzeptabel

                            Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                            bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                            Wie man Fragen richtig stellt

                            Kommentar


                            • #15
                              Re: Re: formularfelder als array empfangen

                              Nein du hast nicht übersehen, sondern du weisst nicht was du damit anfangen kannst

                              Original geschrieben von ghostgambler
                              wohl eher so oder nicht?! *keine Checkung hat was das zusätzliche [] darin sollte*
                              du brauchst keine Ausrede, wenn du was nicht weisst

                              Kommentar

                              Lädt...
                              X