Wie man den Wert und die id aus einer Dropdown in php?
Habe ich erstellt und das html-Formular, die ein drop-down-Liste.
Diese Dropdown-Liste wird gefüllt aus der Datenbank.
<select name="classes">
<?php
foreach() {
?>
<option value="<?php echo $id ?>"><?php echo $name ?></option>
<?php
}
?>
</select>
Nun will ich die $id und $name sowohl. Wie mache ich das?
Habe ich versucht, dieses
echo $_POST['classes'];
Aber es zeigt nur das $id, zu der Sie das Element auswählen. Und ich möchte, dass $id und $name sowohl.
- Nur die ID von der ausgewählten option wird Gebucht. Der Punkt ist, dass die ID dient als alias den Namen, also wissen, die ID sollte genug sein für Sie zu wissen, die Namen.
- Ich muss Sie haben, JavaScript zu verwenden, ändern Sie die post-Anforderung.
- ich brauche aber beides. Wie erhalten sowohl die id und den Namen? Ist es möglich in php?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie nicht. Eine Möglichkeit wäre die Platzierung sowohl infos innerhalb der
value
- Attribut, und dann trennen Sie Sie wieder zurück, mit php (mit Trennzeichen):In PHP:
Aber das ist nicht, wie das system sein soll. In der Regel der $name verwendet werden würde, nur als eine "freundliche" info für den Benutzer verursachen, die möglicherweise manchmal nur eine " INT " und " Benutzer nicht verstehen, was das int bezieht, so geben wir ihm ein Wort Beschreibung, um eine option auszuwählen: aber was würden Sie nur darauf, dass der Wert in der Tat, das können Sie immer wieder die Beschreibung, die zusammen mit ihm kommt (durch eine Suche in der Datenbank, für ex.)
Soweit ich weiß, wenn Sie schicken Sie das Formular ab, wird nur der Wert übernommen werden soll. Ist kein Wert vorhanden, dann die inneren HTML wird der Wert.
Was ich tun würde, ist:
Im Falle Sie nicht vertraut sind, die Frist ist der Verkettungsoperator. Betrachten Sie es als Kleber für Teile einer Zeichenkette. Also ich bin kleben $id, zu der Links von "pipe" und dann das Aufkleben $name wird an das Ende der, die.
Dann in der Prozedur, split oder explode trennen Sie die beiden Werte auf das Rohr.
Eigentlich, ich würde es tun, ein wenig anders, hallte mehr und gehen in die und aus der php/html-weniger, aber ich habe versucht zu verlassen, Ihr code intakt so viel wie möglich.
append name-zu-Id und übergeben Sie als Wert, und explodieren Namen vom anderen Ende
Du willst, ist, und name beide, so dass beim speichern die option Wert ,
setzen wie diese
sowie über die Entsendung Daten nur explodieren, den Wert erhalten Sie beides und nennen
Senden der form bedeutet nur senden 'value' für das select-Feld (Behandlung von 'name' in der option als nur Beschriftung). Sie können ganz einfach Holen "name" aus der Datenbank, wenn Sie die 'id' während der Handhabung des Formulars.