Mr.Miyagi: Variablen übergabe

Hi Leute ich habe eine Liste welche folgendemaßen aussieht, mein Problem liegt in der feststellung welcher Button gedrückt wurde um den Richtigen datensatz in der Textdatei zu bearbeiten bzw. löschen.

$zaehler=1;
foreach ($ausgabe as $value)
 {
 list ($vorname, $nachname, $jahrgang) = split ("\t", $value);
 echo
   "<tr>
    <td> $zaehler  <input type="hidden" name="pos_datensatz" value="$zaehler"></input> </td>
      <td><input class="textfelder" type="text" name="edit_vorname" value="$vorname"></input></td>
     <td><input class="textfelder" type="text" name="edit_vorname" value="$nachname"></input></td>
    <td><input class="textfelder" type="text" name="edit_vorname" value="$jahrgang"></input></td>
    <td><input class="textfelder" type="submit" name="eintrag_bearbeiten_speichern" value="Speichern >>"></input></td>
    <td><input class="textfelder" type="submit" name="eintrag_bearbeiten_loeschen" value="Löschen >>"></input></td>
   </tr>";

$zaehler++;

}
 echo "</form></table>";

Danke für Eure Hilfe.

MFG
Mr.Miyagi

  1. Hallo,

    mein Problem liegt in der feststellung welcher Button gedrückt wurde um den Richtigen datensatz in der Textdatei zu bearbeiten bzw. löschen.

    und worin besteht der Unterschied zu dem Problem in [pref:t=63665&m=361306]? Bleib bitte in deinem alten Thread.

    Grüße aus Nürnberg
    Tobias

    --
    Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
    1. Hello Tobias,

      und worin besteht der Unterschied zu dem Problem in [pref:t=63665&m=361306]? Bleib bitte in deinem alten Thread.

      Das solltest Du aber sehen! Nun sei mal nicht so hibbelig ;-)

      Im ersten Posting hat Mr.M. überhaupt nach der Unterscheidung der Buttons gefragt und nun _haben_ sie einen Namen, aber das nächste Problem (Lernschritt) steht an. Eine Schleife mit polymorphen Ausgaben und den selben Button-Namen.

      Ist meiner Meinung nach ein völlig neues Problem, auch wenn Du das nicht so siehst.

      Grüße

      Tom

      1. Hallo Tom,

        »» und worin besteht der Unterschied zu dem Problem in [pref:t=63665&m=361306]? Bleib bitte in deinem alten Thread.
        Im ersten Posting hat Mr.M. überhaupt nach der Unterscheidung der Buttons gefragt und nun _haben_ sie einen Namen, aber das nächste Problem (Lernschritt) steht an. Eine Schleife mit polymorphen Ausgaben und den selben Button-Namen. Ist meiner Meinung nach ein völlig neues Problem, auch wenn Du das nicht so siehst.

        hm...
        muss ich das verstehen? machen wir jetzt für jeden handlungsschritt ein neues posting auf? wieso hat das vorhergehende problem mit diesem jetzt nichts mehr zu tun? wenn ich als suchender im archiv feststelle, das ich zur komplettierung aller lösungsschritte 15 verschiedene treads lesen muss, frag ich aber auch lieber gleich im forum nach. (und produziere meine eigene tread-kette.)

        freundl. grüsse aus berlin, Raik

        1. Hello zusammen,

          ist natürlich noch ein weiter Weg zu einer Lösung gewesen. Aber ich habe für Mr. Miyagi und alle Anderen, die es interessiert eine Lösung gebastelt.

          Sollte es einfacher oder sauberer gehen, dann bitte ich umm Korrektur.

          ----------------------------------------
          <?php  #### auswahlliste.php ####

          Error_Reporting(E_ALL);

          echo"\n
          <form action="".$_SERVER["PHP_SELF"].""
                method="POST"
                enctype="multipart/form-data">";

          for($i=1;$i<11;$i++)
          {
            echo "<input type="submit" name="speichern[".$i."]" value="speichern">\n";
            echo "<input type="submit" name="loeschen[".$i."]" value="loeschen"><br />\n";
          }
          echo "</form>";

          if (isset($_POST["speichern"]) and is_array($_POST["speichern"]))
          {
            $keys=array_keys($_POST["speichern"]);
            $recno=$keys[0];
            echo "<br /> Speichern Satz $recno<br />";
          }
          elseif(isset($_POST["loeschen"]) and is_array($_POST["loeschen"]))
          {
            $keys=array_keys($_POST["loeschen"]);
            $recno=$keys[0];
            echo "<br /> Löschen Satz $recno<br />";
          }

          ?>
          ---------------------------------------

          Grüße

          Tom

          1. Hallo Tom,

            elseif(isset($_POST["loeschen"]) and is_array($_POST["loeschen"]))

            ^^^
            ich meine zwar, mich erinnern zu können, das der verknüpfungsoperator && heissen müsste (kann mich auch irren),
            aber mit den namen der buttons hat das schon nichts mehr zu tun, weshalb ich dafür wieder einen neuen tread aufmachen sollte. also bis gleich ... ;-)

            freundl. grüsse aus berlin, Raik

            1. Hallo Raik,

              elseif(isset($_POST["loeschen"]) and is_array($_POST["loeschen"]))
                                                  ^^^
              ich meine zwar, mich erinnern zu können, das der verknüpfungsoperator && heissen müsste (kann mich auch irren),

              mit 'and' geht es auch, siehe http://www.php.net/language.operators.logical

              Grüße aus Nürnberg
              Tobias

              --
              Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
              1. Hello Tobi, hello Raik,

                viel wichtiger als && or and ist mir eigentlich:

                Kann man das mit den Buttons und der Stznummer eleganter lösen? Dann würde ich dan nämlich glatt in meinen PHP-Baukasten aufnehmen.

                Ich habe die Satznummer absichtlich bei 1 beginnen lassen, da es Satz 0 inder DB-Technik nicht gibt und Index 0 auch häufig für NUL benutzt wird.

                Bei Verwendung von

                $daten=file();

                passt das dann natürlich nicht.

                Grüße

                Tom

                1. Hi
                  Geht das nicht einfache den ersten Ansatz von Tom fande ich schon ganz gut nur schaffe ich es nicht an den Array Schlüssel zu kommen.

                  Ich bekommen immer nur den Inhalt des Array geliefert welcher mir nicht weiter hilft.

                  Wie kann ich mir den Wert des Array Schlüßel anzeigen lassen?

                  MFG
                  Mr.Miyagi

              2. Hallo Tobias,

                mit 'and' geht es auch, siehe http://www.php.net/language.operators.logical

                siehste! wieder was dazugelernt! :-D
                aber laut tom's logik gehört doch das schon wieder in einen neuen tread. hat ja mit irgendwelchen buttons schon nix mehr zu tun. ;-) *grins*

                freundl. grüsse aus berlin, Raik

          2. Hi Tom,
            habe es jetzt hin bekommen ich danke die für Deine gut Hilfe.

            MFG
            Mr.Miyagi

      2. Hallo Tom,

        Im ersten Posting hat Mr.M. überhaupt nach der Unterscheidung der Buttons gefragt und nun _haben_ sie einen Namen, aber das nächste Problem (Lernschritt) steht an.

        ja, aber dafür braucht man imho keinen neuen Thread - was macht denn einer, der das gleiche Problem hat? Der findet dann nur einen der beiden Threads und kommt damit dann nicht weiter, weil das Problem in diesem nicht komplett gelöst ist.

        Grüße aus Nürnberg
        Tobias

        --
        Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
    2. Wie gesagt ich habe nicht soviel Ahnung von php da ich grade erst anfange und für mich sah das nach einen anderen Probelm aus.

      Es wäre hilfreich wenn du mir erklärst wie ich das dann mach, soll ich für jeden Button eine ISSSET abfrage bauen?

      MFG
      Mr.Miyagi

  2. Hi Leute ich habe eine Liste welche folgendemaßen aussieht, mein Problem liegt in der feststellung welcher Button gedrückt wurde um den Richtigen datensatz in der Textdatei zu bearbeiten bzw. löschen.

    $zaehler=1;
    foreach ($ausgabe as $value)
     {
     list ($vorname, $nachname, $jahrgang) = split ("\t", $value);
     echo
       "<tr>
        <td> $zaehler  <input type="hidden" name="pos_datensatz" value="$zaehler"></input> </td>
          <td><input class="textfelder" type="text" name="edit_vorname" value="$vorname"></input></td>
         <td><input class="textfelder" type="text" name="edit_vorname" value="$nachname"></input></td>
        <td><input class="textfelder" type="text" name="edit_vorname" value="$jahrgang"></input></td>
        <td><input class="textfelder" type="submit" name="btn[$i][speichern]" value="Speichern >>"></input></td>
        <td><input class="textfelder" type="submit" name="btn[$i][loeschen]" value="Löschen >>"></input></td>
       </tr>";

    $zaehler++;

    }
     echo "</form></table>";

    Versuch es mal so.

    Lass Dir dann mal testhalber

    echo "<pre>";
    print_r($_POST);
    echo "</pre>";

    Die Post-Vars anzeigen.

    Grüße

    Tom

    1. Hello,

      nun habe ich selber nicht genau hingeschaut. Aber wenn Du statt $zaehler noch $i schreibst, passt es wieder:

      Hi Leute ich habe eine Liste welche folgendemaßen aussieht, mein Problem liegt in der feststellung welcher Button gedrückt wurde um den Richtigen datensatz in der Textdatei zu bearbeiten bzw. löschen.

      $i=0;

      foreach ($ausgabe as $value)
       {
       list ($vorname, $nachname, $jahrgang) = split ("\t", $value);
       echo
         "<tr>
          <td> $zaehler  <input type="hidden" name="pos_datensatz" value="$zaehler"></input> </td>
            <td><input class="textfelder" type="text" name="edit_vorname" value="$vorname"></input></td>
           <td><input class="textfelder" type="text" name="edit_vorname" value="$nachname"></input></td>
          <td><input class="textfelder" type="text" name="edit_vorname" value="$jahrgang"></input></td>

      <td><input class="textfelder" type="submit" name="btn[$i][speichern]" value="Speichern >>"></input></td>
           <td><input class="textfelder" type="submit" name="btn[$i][loeschen]" value="Löschen >>"></input></td>

      </tr>";

      $i++;

      }
       echo "</form></table>";

      Tom