Probleme beim Auslesen mit $_POST

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

  • Probleme beim Auslesen mit $_POST

    Hallo. Ich habe ein Problem beim Auslesen bestimmter Werte.
    Ich erstelle zunächst eine dynamische Tabelle mit:

    //////////////////////////////////////
    <?php
    for($j=1; $j<=5 ; $j++){
    ?>

    <tr>
    <td><input type ="number" size=21 name="uj" /></td>
    <td><input type ="number" size=21 name="vj" /></td>
    <td><input type ="number" size=21 name="bj" /></td>
    </tr>

    <?php
    }
    ?>

    <form method="post" action="Seite2.php">
    <input type ="submit" value="Werte weitergeben!" />
    </form>
    //////////////////////////////////////

    Die Tabelle entsteht und man kann jetzt 15 Werte eintragen.
    Leider habe ich bisher keine Möglichkeit gefunden, die Werte wieder auszulesen und für eine Rechnung oder weiteres zu verwenden.

    $_POST['uj'] liefert mir leider keinen Wert zurück

    Ich hoffe es kann mir jemand weiterhelfen.
    Mit freundlichen Grüßen Tim

  • #2
    HTML-Code:
    name="uj[]"
    ?

    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Leider klappt das auch nicht

      mit
      echo $_POST['uj'][1];

      bekomme ich nur
      Notice: Undefined index: uj

      Kommentar


      • #4
        Deine inputs befinden sich nicht innerhalb des forms!
        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


        • #5
          Zitat von Quetschi Beitrag anzeigen
          Deine inputs befinden sich nicht innerhalb des forms!
          Adlerauge!

          Peter
          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
          Meine Seite

          Kommentar


          • #6
            Danke. Das wars . Vielen Dank für die Hilfe.

            Thread kann geschlossen werden.

            Kommentar


            • #7
              Zitat von Kropff Beitrag anzeigen
              Adlerauge!
              160% Sehleistung!

              @TimMcMoney
              Sicher, dass es nun so auch wirklich wie gewünscht funktioniert?
              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


              • #8
                Eigentlich schon. Hier nochmal das "Endskript".

                PHP-Code:
                //////////////////////////////////////Seite 1.php
                <form method="post" action="Seite2.php">

                <?php
                  
                for($j=1$j<=$j++){
                ?>

                <tr>    
                         <td><input type ="number" size=21 name="uj[]" /></td>
                         <td><input type ="number" size=21 name="vj[]" /></td>
                         <td><input type ="number" size=21 name="bj[]" /></td>
                </tr>

                <?php
                }
                ?>

                       <input type ="submit"  value="Werte weitergeben!" />
                </form>
                //////////////////////////////////////
                Auslesen kann ich die Werte jetzt so:

                PHP-Code:
                /////////////////////////////////////Seite 2

                for($j=1$j <= 5$j++){
                            if(isset(
                $_POST['uj'][$j-1])){$uj[$j] = $_POST['uj'][$j-1];}
                            if(isset(
                $_POST['vj'][$j-1])){$vj[$j] = $_POST['vj'][$j-1];}
                            if(isset(
                $_POST['bj'][$j-1])){$bj[$j] = $_POST['bj'][$j-1];}

                Aber wenn das ganze noch Schwächen hat, dann bin ich natürlich gern an Verbesserungen interessiert.
                Jedenfalls haben mir eure Ratschläge sehr geholfen.

                Beste Grüße

                Kommentar


                • #9
                  Ah - ok, Kropffs Tipp wurde auch umgesetzt.
                  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


                  • #10
                    Hi TimMcMoney,

                    >> Aber wenn das ganze noch Schwächen hat, dann bin ich natürlich gern an Verbesserungen interessiert. <<

                    Wenn du jedes Textfeld anders benennst, brauchst du dieses nicht einzeln als Array (name="uj[]") im Form. zu deklarieren, da reicht name="uj".

                    Wenn du die Werte der Textfelder sowieso in einer Schleife abkasperst, reicht es, EIN Textfeld-Array zu deklarieren, z.B.:
                    HTML-Code:
                    <input type="text" name="eingabe[]">
                    <input type="text" name="eingabe[]">
                    <input type="text" name="eingabe[]">
                    . . . usw.
                    Auslesen der gesendeten Werte:
                    PHP-Code:
                    if(isset($_POST['eingabe'])){
                      foreach(
                    $_POST['eingabe'] as $eingabe){
                        
                    $eingabe_array[]=$eingabe;
                      }

                    Gruß
                    Günni

                    Kommentar


                    • #11
                      PHP-Code:
                       foreach($_POST['eingabe'] as $eingabe)
                          
                      $eingabe_array[]=$eingabe
                      ist das gleiche wie:

                      PHP-Code:
                          $eingabe_array=$_POST['eingabe']; 
                      Wir werden alle sterben

                      Kommentar


                      • #12
                        Hi combie,
                        dass PHP eine Variable bei Zuweisung eines Arrays in ein solches konvertiert, weiß ich schon.
                        PHP-Code:
                        foreach($_POST['eingabe'] as $eingabe){
                            
                        $eingabe_array[]=$eingabe;
                          } 
                        . . . war auch nur als Beispiel für eine Anweisung gedacht.

                        Ich hätte auch schreiben können . . .
                        PHP-Code:
                        foreach($_POST['eingabe'] as $eingabe){
                            
                        ToDo with Variable was immer du willst;
                          } 
                        Besser so? ;-)
                        Gruß
                        Günni

                        Kommentar

                        Lädt...
                        X