<Form> Schleife mit session

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

  • <Form> Schleife mit session

    Hallo zusammen,

    für ein Projekt benötige ich Seiten, in denen viele gleichartige Eingaben per <form> dann weiterverarbeitet werden.
    Dazu habe ich z.B. eine Schleife gemacht, um immer 1 Datensatz zu erfragen:


    test.php:

    for ($x=0;$x<20;$x++) {
    echo '<form action="test1.php" method="post">';
    echo '<input ........
    .....
    echo ' <input type="submit" value="senden">';
    }

    somit kriege ich im browser z.B. 20 Zeilen, die jede Eingabefelder und einen submit-button hat. Im aufgerufen script test1.php benötige ich nun die Nummer der Zeile, aus der der Anwender in test.php den submit-button gedrückt hat.

    mit einem normalen <input type="hidden" name="nr" value="'.$x.'"> ist das kein Problem, aber ich möchte das nicht per post machen, da es sein kann, dass mehrere user gleichzeitig das script verwenden. Dann gibt es vermutlich falsche Mischeingaben.
    Daher möchte ich sessions einsetzen, damit klar ist, von wem welche Variable kommt. Auch $_SESSION.. usw. geht eigentlich sehr gut, aber durch die Schleife wird jedes $_SESSION['zahl']=$x immer auf den höchsten Wert der schleife gesetzt, so dass man nicht erkennen kann, in welcher Zeile der user im Browser gerade war...
    Hätte jemand eine Idee, wie man sowas realisieren kann ? hab mit google noch nix gefunden....

    Herzlichen Dank für jeden Tip

    mfg Jochen

  • #2
    Sieht ja sehr wild aus. Warum machst Du nicht ein großes Formular und setzt das <form vor die Schleife?
    Um abzufragen, kannst Du den submit butoon doch nen Namen geben und jeden Schleifendurchlauf hochzählen und hinter den Namen hängen.
    Tja, aber so richtig verstehen, warum du jetzt was machen willst, habe ich noch nicht*grübel*!

    mfg streuner
    Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
    der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

    "Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"

    Kommentar


    • #3
      re Schleife

      wozu: im Prinzip geht es darum, mit einem script eine variable Anzahl Datensätze aus einer mysql-Tabelle gleichzeitig anzubieten und beliebige Änderungen darin zu ermöglichen. Ist praktisch eine Matrix aus n Zeilen mit m Spalten. Wenn ich nur 1 gemeinsames <Form> mache, muss ich ja die Felder in den Zeilen nummerieren name1, name2... bei einer variablen Zahl von Sätzen(Zeilen) wird das recht wild...

      den Tip mit dem nummerierten submit-button muss ich mal durchdenken, klingt ganz gut; aber dann habe ich immer noch eine $post-Variable und keine $_SESSION Variable zum nächsten script , oder ???

      Vielen Dank fürs Grübeln und Gruß
      jodaog

      Kommentar


      • #4
        Wir haben hier Code-Tags, die du kennen solltest, wenn du die Regeln gelesen hast … was ich dir dringend empfehle!
        [FONT="Helvetica"]twitter.com/unset[/FONT]

        Shitstorm Podcast – Wöchentliches Auskotzen

        Kommentar


        • #5
          Ja, du hast dann eine Post Variable, aber die kannst du ja auch an ein nächstes Skript übergeben. Du wirst doch sicherlich die Eingaben auch noch prüfen wollen, auf der aktuellen Seite, bevor du sie weitergibst, oder nicht?
          Wie du mit Formularen über mehrere Seiten arbeitest, siehst du hier, als Gedankenanstoß:

          Formulare über mehrere Seiten

          mfg streuner
          Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
          der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

          "Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"

          Kommentar


          • #6
            Hallo,

            wenn du einem Formularelement einen Namen in Array-Notation gibst, landen Inhalte auf PHP-Seite auch in einem Array:

            HTML-Code:
            <span class="id">1</span>
            <input type="text" name="firstName[1]" />
            <input type="text" name="lastName[1]" />
            ...
            <span class="id">2</span>
            <input type="text" name="firstName[2]" />
            <input type="text" name="lastName[2]" />
            ...
            PHP-Code:
            foreach ($_POST["firstName"] as $id => $firstName) {
                
            $lastName $_POST["lastName"][$id];
                
            // mach was mit $firstName und $lastName

            Auf die Art kannst du alles in ein Formular packen und weißt trotzdem immer, zu welchem Datensatz es gehört.

            Gruß,

            Amica
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar

            Lädt...
            X