formularübergabe <select>

  • moin !

    hätte nochmal eine php-frage:

    ich hab ein formular definiert in der eine combobox (also select mit size=1)
    mit daten aus einer db gefüllt. übergeben wird dann eben jene liste.
    allerdings kann ich dann nur den wert / text rausholen, ich bräucht aber
    zusätzlich noch die id. wenn ich se in title, value .. zwischenspeicher, bekomm
    ich die dann wieder raus ?

    hier mal der code, is vermutlich weng umständlich beschrieben..

    im aufgerufenen formular (also des über die post-methode) kann ich dann den inhalt abgreifen

    Code
    $wert = $_POST['XXX'];

    wie komm ich an den wert in value ?

  • Eigentlich sollte in $_POST['XXX'] der value stecken und nicht der Text. Voraussetzung sind allerdings richtig gesetzte hochkommata. ;)

    Code
    while($liste = mysql_fetch_array($result)) 
       echo "<option value='" . $liste['id'] . "'>" . $liste['bez'] . "</option>\n";
  • kann ich auch 2 werte übergeben ?
    ich brauch ja die id UND die bez.

    selbst wenn in $_POST['xxx'] die value drinsteht (also id), wie komm ich an die bez ?
    (ohne nochmal db aufmachen und rausholen)

  • Was spricht dagegen, den datensatz mit der id nochmals aus der DB zu holen? Du könntest mit einem trick die id und den Text im value ablegen:

    Code
    $value = $liste['id'] . "||" . $liste['bez'];


    und dann hinterher mit explode wieder auseinander nehmen, aber wozu?

  • kannst natürlich auch n verstecktes feld basteln, mit dem zu dann die id übergibst und mit js automatisch änderst, wenn die auswahl geändert wird

    aber wofür mehr arbeit machen ? die lösung mit der 2. abfrage hätte ich auch gewählt :)

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!