Auswahllisteneintag einem Texfeldinhalt eindeutig zuweisen

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

  • Auswahllisteneintag einem Texfeldinhalt eindeutig zuweisen

    Hallo,
    ich bin es mal wieder.
    Ich kriege folgendes Problem nicht gelöst.
    Ich habe eine Auswahlliste (die ich mit dem Ergebnis einer MySQL-Anfrage(eindeutigeID, Mitarbeiter) fülle).
    <select>
    <option value="eindeutige id">Mitarbeiter1</option>
    <option value="eindeutige id">Mitarbeiter2</option>
    </select>
    Neben dieser Auswahliste gibt es ein Textfeld, in dem ein Wert eingetragen werden soll.
    Dieser eingegebene Wert soll dann der eindeutigen ID zugeordnet werden und in die Datenbank-Tabelle geschrieben werden.
    Ich kriege die Zuordnung von ID zu Texfeldinhalt nich hin.
    Weiß nicht mehr weiter.

    THX

  • #2
    also erstmal braucht dei select nen namen, und über diesen kannst du dann deine id holen...
    <select name="eid">
    ...



    ...und dann einfach update bla set... where id=$eid
    eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

    Kommentar


    • #3
      Der Weg funktioniert. Eigentlich war meine Frage auch nicht eindeutig gestellt, da ich mehrere Auswahllisten mit einem korrespondierenden Texfeld habe.
      Hier mal der Quelltext. Ich sammel einmal die Auswahl in select[] und die Texfeldeingaben in goal[]. Das gibt indizierte arrays. Wie füge ich das wieder alles richtig zusammen?

      # mysql_num_rows gibt die Anzahl der der Zeilen einer Anfrage zurück.
      $anz_datensaetze=mysql_num_rows($result);

      # in der while-Schleife wird ein assoziatives Array erzeugt
      while ($row=mysql_fetch_array($result,MYSQL_ASSOC)) {
      $array[$row[id]]=$row[Name];
      }

      # Formular Anfang
      echo "<form name=\"form\" action=\"form.php\">";
      echo "<table>";
      # für jedes Array-Element wird eine Auswahlliste erzeugt
      for($i=1;$i<$anz_datensaetze+1;$i++) {
      if ($i%2 != 0) {
      echo "<tr><td>";
      echo "<select name=\"select[]\">";
      #jedes Array-Element wird in die Auswahllisten eingelesen
      foreach($array as $key => $value) {
      echo "<option value=\"$key\"> $value </option>";
      }
      echo "</select>";
      echo "</td>";
      echo "<td><input type=\"text\" name=\"goals[]\" size=\"3\"></td>";}
      else {
      echo "<td>";
      echo "<select name=\"select[]\">";
      #jedes Array-Element wird in die Auswahllisten eingelesen
      foreach($array as $key => $value) {
      echo "<option value=\"$key\"> $value </option>";}
      echo "</select>";
      echo "</td>";
      echo "<td><input type=\"text\" name=\"goals[]\" size=\"3\"></td></tr>";}
      }

      echo "<input type=\"submit\" value=\"absenden\">";
      echo "</form>";
      echo "</table>";
      # Formular Ende
      ?>

      Kommentar


      • #4
        sehr übersichtlich... da würde ich natürlich auch nicht mehr durchsehen.
        aber ich denke mal, daß du dann in select[n] den passenden wert zu goals[n] hast,
        wobei select[n] = deine ID passend zu goals[n] ist
        eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

        Kommentar


        • #5
          Ich gebe Dir recht, was die Übersichtlichkeit betrifft. Das ergibt sich aber aus der notwendigen Formatierung , die ich erreichen will.

          Auswahlliste Texfeld | Auswahlliste Textfeld
          Auswahlliste Texfeld | Auswahlliste Textfeld

          Ich kriege bei meiner momentanen Lösung folgendes

          Array ( [0] => ID1, [1]=>ID2,[2]=>ID3 ) für Select[]
          Array ( [0] =>Wert1, [1]=>Wert2, [2]=>Wert3) für goal[]

          Ich muß aber ID1=>Wert1, ID2=>Wert2,ID3=>Wert3 zuorden um es mit update einzutragen.

          Danke für deine Mühe, Slarti.

          Kommentar


          • #6
            for($i=0;$i<count($Select);$i++)$neuesArray[$Select[$i]]=goal[$i];
            eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

            Kommentar


            • #7
              das ist aber eher ein Fall für JavaScript vor dem Abschicken Deines Forms.
              Beantworte nie Threads mit mehr als 15 followups...
              Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

              Kommentar

              Lädt...
              X