SELECT-VALUE beibehalten
Simon
- php
Moins,
fogendes Problem:
Ich habe eine SELECT-Auswahlmöglichkeit.
Diese ist in ein Formular eingebaut. Nun wird kontrolliert ob alle Einträge in diesem Formular richtig sind. Wenn das nicht der Fall sein sollte wird ein Fehlerhinweis wird das Formular neugeladen und alle richtigen Einträge eingetragen blos bei falschen Einträgen wird es rot makiert.
Doch bei diesem SELECT-Feld springt er immer wieder auf auf <option> der "selected" war. Wie kann ich das umgehen?
Hier mal der Code:
if($eintrag == 0) {
echo "<select name='Thema_ID'>";
echo "<option value='' selected></option>";
$result_thema = mysql_query("SELECT ID, Thema FROM yim_forum_thema");
while ($row_thema = mysql_fetch_array($result_thema)) {
// echo "<input type='radio' name='Thema_ID' value='$row_thema[ID]'>$row_thema[Thema] ";
echo "<option value='$row_thema[ID]'>$row_thema[Thema]</option>";
}
echo "</select>";
} else {
$result = mysql_query("SELECT yim_forum_thema.Thema FROM yim_forum, yim_forum_thema WHERE yim_forum.ID=".$eintrag." AND yim_forum.Thema_ID = yim_forum_thema.ID");
$eintragsdaten = mysql_fetch_array($result);
$thema_name = $eintragsdaten["Thema"];
echo "<input type='hidden' name='Thema_ID' value='".$Thema_ID."'>";
echo $thema_name;
}
Gruß ... Simon
Moin!
Doch bei diesem SELECT-Feld springt er immer wieder auf auf <option> der "selected" war. Wie kann ich das umgehen?
Logisch.
Du gibst ein Select-Feld aus, dessen erste, leere Auswahlmglichkeit fest selektiert ist.
Wenn du bei der erneuten Ausgabe den vom Benutzer gewählten Wert selektiert haben willst, so dass ein einfaches Neuabschicken funktioniert, mußt du genau das tun: Den gewünschten Wert selektiert machen. Also das Attribut "selected" je nach Auswahlverhalten drankleben an die richtige <option>.
- Sven Rautenberg
Hi,
Den gewünschten Wert selektiert machen. Also das Attribut "selected" je nach Auswahlverhalten drankleben an die richtige <option>.
- Sven Rautenberg
Danke erstmal ... hast du 'ne Ideee wie man das Code-Technisch lösen könnte?
Gruß ... Simon
yo,
while ($row_thema = mysql_fetch_array($result_thema))
{
if ($row_thema[ID] == alter_formularwert)
echo "<option value='$row_thema[ID]' selected>$row_thema[Thema]
else
echo "<option value='$row_thema[ID]'>$row_thema[Thema]
</option>";
}
Ilja
Dängggeee Cheffeee! ;-)
Gruß ... das Gemeindekind
Hiho,
naja, auf die Lösung hättest du auch alleine kommen können. Erstmal solltest du dir überlegen was 'selected' bedeutet. Genau "ausgewählt". Dann sollte dir auch einfallen wieso (richtiger weise) das Formular immer auf den mit 'selected' makierten Eintrag springt.
So und nun überleg mal ganz scharf was du mit der Option 'selected' wohl machen musst um dein gewünschtes Feld anzeigen zu lassen.
Grüsse
Marc