Ankündigung

Einklappen
Keine Ankündigung bisher.

Tabellenspalte als Formular übergeben an anderes script

Einklappen

Neue Werbung 2019

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

  • Tabellenspalte als Formular übergeben an anderes script

    Hallo,

    ich möchte eine Reihe einer Tabelle zur Eingabe nutzen und anschließend die eingegebenen Werte zu einer Datenbankreihe hinzuaddieren.
    Die Anzahl der Felder in der Tabelle ist immer unterschiedlich, da sie über einen Filter erstellt wird.

    mein nicht funktionierender Weg:
    PHP-Code:
    <?php
    echo "<form action='$_SERVER[PHP_SELF]?mode=data METHOD='POST'>"
    <
    input type='text' size='4' name='number' value='$_POST[number]'> </td>

    ?>
    Vielen Dank

    Michael

  • #2
    ?? Bahnhof ??

    Reihe .... die Reihe an der Supermarktkasse meinst du sicher nicht
    doch meinst du eine Zeile oder Spalte ... ( wobei ich keine tabelle erkennen kann )

    ... naja have a nice day

    Kommentar


    • #3
      Hi,
      ja ich meinte Spalte und wollte nicht die ganze Tabelle hier als code eintragen sondern nur die Übergabemethode für den Array. Die Tabelle erscheint ohne Probleme.
      Danke
      Michael

      Kommentar


      • #4
        ...schnell erklär noch was du mit Datenbankreihe meinst und hinzuaddieren

        $$$$$$ reihe1 + §§§§§§§§ reihe2

        oder meinst du input felder mit gleichem Namen so das ein array ensteht ?
        Code:
        <form method="post" action="?">
        <input name="x[]" value="1" />
        <input name="x[]" value="2" />
        <input name="x[]" value="3" />
        <input name="x[]" value="4" />
        <input name="x[]" value="4" />
        <input type="submit" value="x" />
        </form>
        hellseher gibts im Kino und glaube auch nur da

        Kommentar


        • #5
          ich meinte eine Datenbankspalte, sorry.

          und die input Felder haben unterschiedliche Anzahlen, da die Werte der Tabelle über ein Filterscript kommen, daher habe ich versucht den Array der Eingabefelder in der Tabellenspalte so zu erstellen:

          PHP-Code:
          <?php
          echo "...<td><input type='text' size='4' name='number' value='$_POST[number]'> </td>...\n";

          ?>
          Der eingegebene Wert soll dann dem vorhandenen Wert einer anderen Datenbankspalter hinzuaddiert werden, das ist aber eigentlich sekundär und nicht mein eigentliches Problem.
          Mein Problem ist: wie bekomme ich die in der Tabelle eingetragenen Werte zum lager_data.php -script?
          Danke
          Michael

          Kommentar


          • #6
            Hier gibts noch einen Screenshot falls ich mich immer noch zu umständlich ausdrücke:
            Screenshot
            Die Werte in den leeren Eingabefelder sollen über ein ..._data.php script der Spalte 'Lager' hinzugefügt werden.
            Danke
            Michael

            Kommentar


            • #7
              Code:
              --- php teil ---
              
              foreach ($_POST['count'] as $key => $value)
              {
                  mysql_query("UPDATE tabelle SET anzahl = '$value' WHERE name = '$key'");
              }
              
              -- html teil --
              
              <form method="post" action="?">
              <input name="count['externe']" value="" />
              <input name="count['externe2']" value="" />
              <input name="count['externe3']" value="" />
              <input name="count['externe4']" value="" />
              <input name="count['externe5']" value="" />
              <input type="submit" value="x" />
              </form>
              ich denke mal so wenn ich dich jetzt richtig verstanden habe

              Kommentar


              • #8
                Hallo,
                sorry, hatte aber keine Gelegenheit dranzubleiben, deswegen jetzt erst wieder.

                Nachdem ich meinen ersten Fehler gefunden habe, der mich fast in den Wahnsinn getrieben hätte ( vergessenes Hochkomma) kommen jetzt auch die Werte beim Script an.

                Nur da die Tabelle durch einen Filter vorhandener Datensätze erstellt wird, haben die Zeilen nicht aufeinanderfolgende ID's,
                und das UPDATE-Query ist abhangig von der jeweiligen ID der Zeile.
                Ich denke das hier ein mehrdimensionales Array helfen könnte, nur haperts wieder an der technischen Ausführung.

                der Form Teil
                PHP-Code:
                <?php
                 
                echo "<form action='$_SERVER[PHP_SELF]?mode=data' METHOD='POST'>"
                while (
                $row3 db_fetch_row($result2)) {
                $output.= "<tr>.....</td><td> <input type='text' size='4' name='number[$ID]' value=''> </td>....</tr>\n";



                ?>
                und _data.php

                PHP-Code:
                <?php
                foreach ($_POST['number'] as $key => $value)

                {
                   
                $result1db_query(xss("UPDATE ".DB_PREFIX."lager
                                                   SET numb = '
                $value' WHERE numb = '$key'")) or db_die();
                 } 

                ?>
                Die Frage für mich bleibt, wie ich die Abhängigkeit zur ID der vorhandenen Werte herstelle um die schon vorhandenen Werte in der Tabelle zu aktualisieren.

                Danke

                Michael

                Kommentar

                Lädt...
                X