PDA

View Full Version : списки


Alexfilus
23.05.2006, 12:30
не знаю к какому языку это больше относится, но у меня такая проблема:
у меня есть программа на рнр. там есть выпадающий список. в списке выбираешь один из пунктов, жмёш на кнопку и выводится одна и таблиц в бд. как сделать так чтобы после нажатия кнопки и соответственно обновления страницы выбранный пункт оставался выбранным, а не первым в списке?

Soniks
23.05.2006, 13:40
В составлении выпадающегося списка, если он идет через цик, то делается так:
echo "<select name=\"id_t\" >\n";
while(list($id,$name)=....){
if($id== $_GET['id_t']) $sel = "selected="\selected\"";
else $sel = "";
echo "<option $sel value=\"$id\" >$name</option>\n"
}
echo "</select>";

если без цикла, то для каждого пункта таблицы делать проверку:
if($_GET['id_t'] == "1") $sel = "selected="\selected\"";
else $sel = "";
echo "<option $sel value=\"1\">первый пункт</option>\n"

Alexfilus
31.05.2006, 14:07
Не работает. Вот код списка:
echo "<form action=\"modules.php?name=$module_name&go=eject\" method=\"post\">&nbsp;<b>Выберите точку:</b>"
. "<select name=tochka>"
. "<option value=\"orb\">Орбита</option>"
. "<option value=\"len\">Ленина</option>"
. "<option value=\"voe\">Военвед</option>"
. "<option value=\"pri\">Привоз</option>"
. "<option value=\"inter\">Интер</option>"
. "</select><br><br>"
. "<input type=\"submit\" value=\"Показать\"><br></form>";

Alexfilus
04.06.2006, 17:05
неужели никто не знает?

Soniks
05.06.2006, 20:40
Alexfilus а что именно не работает или вы даже не пытались?

Alexfilus
07.06.2006, 14:37
Насколько я понял всё должно выглядеть вот так:
if($_GET['id_t'] == "1") $sel = "selected='selected'";
else $sel = "";
echo "<option $sel value=\"1\">первый пункт</option>\n;"
if($_GET['id_t'] == "2") $sel = "selected='selected'";
else $sel = "";
echo "<option $sel value=\"2\">второй пункт</option>\n;"
if($_GET['id_t'] == "3") $sel = "selected='selected'";
else $sel = "";
echo "<option $sel value=\"3\">третий пункт</option>\n"
Но всё равно при выборе любого из пунктов страница отрывается а выбранным становится верхний пункт.