Announcement

Collapse
No announcement yet.

HTML-Formulareingabe an ein Array übergeben

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • HTML-Formulareingabe an ein Array übergeben

    Guten morgen,


    ich habe mal wieder ein Problem bei dem ich auf eure Hilfe angewiesen bin.=)
    Freund google kann mir leider absolut nicht helfen, die antwort auf meine Frage scheint also
    entweder viel zu einfach oder viel zu doof zu sein.


    also, wie beschreibe ich mein problem.

    ich habe eine liste von Druckern in einem php array angelegt.
    Diese haben einen Namen,Preis, Nummer und eine Menge.

    Angezeigt werden diese in einem Html Dokument das in einem php file includet wird.
    hier ein auszug des Bodys
    ....
    <?php foreach($MonoLaserdrucker as $a){ ?>
    <tr>

    <td>
    <?php echo $a["Modell"]; ?>
    </td>
    <td>
    <?php echo $a["PN"]; ?>
    </td>
    <td>
    <input type="text" name="Menge[]" size="2" value="0"/>
    </td>
    </tr>
    <?php } ?>

    ....

    wie man sieht, wird über die Schleife schön die Tabelle aufgebaut...

    jetzt möchte ich eigentlich nur folgendes erreichen...

    es soll die Menge die der Benutzer über das oben erstelle formularfeld eingibt
    irgendwie in dem php array abgespeichert werden....

    hier ein auszug des php arrays:


    $MonoLaserdrucker=array();



    $Marken=array();
    $Marken["ID"]="0";
    $Marken["Modell"]="Lexmark E260";
    $Marken["PN"]="34S0192";
    $Marken["UHG"]=10;
    $Marken["LVP-Preis"]=112.47;
    $Marken["Menge"]=0; //hier soll wie auch immer die benutzereingabe abgespeichert werden...
    $Marken["Gesamtpreis"]=0;
    $MonoLaserdrucker[]=$Marken;

    natürlich kommen noch viele weitere drucker hinzu...
    hoffe ich konnte mein problem einigermaßen verständlich näher bringen, würde mich auf eine Antwort riesig freuen.



    viele grüße

    Alex

  • #2
    Hallo,

    Grundlagen zur Formularverarbeitung: Formulare verarbeiten

    Gruß Falk
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      Hallo Falk,

      Formulareingabe auslesen von mir aus in variablen abspeichern und ausgeben ist mir alles klar nur wie, genau in meinem Beispiel, die Menge XY an der Stelle XY auch wieder in XY geschrieben wird. Ist das bissle tricky heißt, irgendeine variable zählt durchläufe und später wird diese mit Indizie von Array verglichen und eben eingetragen.

      Comment


      • #4
        Originally posted by execute View Post
        Hallo Falk,

        Formulareingabe auslesen von mir aus in variablen abspeichern und ausgeben ist mir alles klar nur wie, genau in meinem Beispiel, die Menge XY an der Stelle XY auch wieder in XY geschrieben wird. Ist das bissle tricky heißt, irgendeine variable zählt durchläufe und später wird diese mit Indizie von Array verglichen und eben eingetragen.

        Ungüstiges Verfahren. Besser wäre es an dem Input eine Infomation über die Identität des Datensatzes abzulegen, zu dem die Menge eingeben wird
        Christian

        Comment


        • #5
          meinst du so?

          html code
          <?php $zaehler=0; foreach($MonoDrucker["data"] as $a){ ?>
          <tr>

          <td>
          <?php echo $a["Modell"]; ?>
          </td>
          <td>
          <?php echo $a["PN"]; ?>
          </td>
          <td>
          <?php echo $a["UHG"]; ?>
          </td>
          <td>
          <?php echo $a["LVP-Preis"]; ?>
          </td>
          <form action="step2.php" method="POST">
          <td>
          <input type="text" name="Menge[<?php $zaehler ?>]" size="2" value="0"/>
          <input type="text" name="Zähler[<?php $zaehler++ ?>]" value=""/>
          </td>
          </tr>
          <?php } ?>


          php code:



          foreach( $_POST["Menge"] as $menge )
          {
          if($menge>0)
          {


          $id=array_search($_POST["Menge"]);

          foreach($MonoDrucker["data"] as $marke)
          {
          if($marke["ID"]==$id)
          {
          $marke["Modell"];
          }




          }

          }

          }



          manno mann...
          habe gedacht das wir der einfachere teil des projektes :X
          gäbe es nun ieine methode die mir den index eines arrays liefert wenn ich den wert angebe hätte ichs geschafft...
          aber ne gibts ja nit

          Comment


          • #6
            Weiss ich nicht, wenns geht. Für mich wäre schon der Ansatz mit dem Array falsch. Wenn ich eine Reihe von Produkten habe, besteht diese wohl aus einer Reihe von Daten und einer ID die dieses Produkt identifiziert. Diese ID müsste der Input kennen und nach dem Submit wird aus der Reihe von Produkten das mit dieser ID gesucht und die Menge zugeordnet.

            Das herumgewerkel mit dem Array ist fehleranfällig und schwer zu warten
            Christian

            Comment


            • #7
              ah jetzt versteh ichs, hast du zufällig ein Beispiel wo du das angewand hast?
              kannst es per E-Mail schicken wenn du magst, würde mich freuen^^

              Comment


              • #8
                Ich habe keine Beispiele...
                Christian

                Comment

                Working...
                X