|
|
|
| Есть форма с двумя select, нужно чтобы при выборе значения в первом, обновлялся второй.
Подскажите, пожалуйта, как это сделать? У меня голова уже кипит. Не могу заставить второй select работать.
<form action="scategory.php" method="POST">
<select name="otheme">
<?php
$sql = "SELECT `theme` FROM `theme_razdel`";
include "conf1.php"; //подключение к базе
while($row = mysql_fetch_assoc($rs))
{ $ad = $row['theme'];
print" <option>$ad</option>";
}
mysql_close($conn);
?>
</select>
//и другой select
<select name="d_theme">
<?php
$sql = "SELECT `theme_podr`.`podrazdel`
FROM `theme_razdel` , `theme_podr`
WHERE `theme .........";
include "conf1.php";
while($row = mysql_fetch_assoc($rs))
{ $ad1 = $row['podrazdel'];
print" <option>$ad1</option>";
}
mysql_close($conn);
?>
</select>
<br><input TYPE="submit" name="sudadd" VALUE="ШАГ2">
</form>
|
| |
|
|
|
|
|
|
|
для: Nigma07
(31.01.2008 в 04:25)
| | У тебя будет второй селект забивать после перезагрузки страницы? или просто javascript? или будет подгружаться ajax?
И как то странно сделано... у тебя тема не привязана к id?
print" <option>$ad</option>";
|
я бы сделал
print" <option value='тут этот id'>$ad</option>";
|
| |
|
|
|
|
|
|
|
для: Director_Of_Zoo
(31.01.2008 в 09:28)
| | >У тебя будет второй селект забивать после перезагрузки страницы? или просто javascript? или будет подгружаться ajax?
>И как то странно сделано... у тебя тема не привязана к id?
id вставить не трудно, а вот как это все прописать?
Мне не важно, будет перезагружаться страница или нет. Главное, чтобы при событии onChange() первого select_а обновлялся второй, т.е происходила выборка из БД. Второй не будет забивать первый.
Пишу магазин и у меня в 1-selecte например "Бытовая техника", а во 2 по условию выбираются "Холодилники, Пылесосы ........"
С кнопкой обновить сделал, все работает, а все ж хочеться чтоб само.
Сколько не читал JavaScript, понять не могу его, да и на форуме порыскал - ничего не нашел. Может запрос писал неправильно! | |
|
|
|
|
|
|
|
для: Director_Of_Zoo
(31.01.2008 в 09:28)
| | Может подскажите как передать данные из формы в PHP, чтоб выглядело примерно так:
scategory.php?vibor='document.form1.d_theme.value ' ;
<form action="scategory.php" method="GET" name="form1">
<select name="otheme" OnChange="( document.form1.d_theme.value )">
<option >Привет</option>
<option >Пока</option>
</select>
|
| |
|
|
|
|
|
|
|
для: Nigma07
(01.02.2008 в 06:20)
| | я так понимаю, если магазин то лучше сделать с использованием ajax.
Схема такая:
событие onchange() посылает ajax запрос на сервер. Получает данные в виде, например, уже готового HTML кода (так будет проще).
Полученый HTML код с помощью функции обработчика выводится в некий блок:
<div id='secondSel'>
</div>
|
Допустим с сервера при выборе пришли данные, которые мы загнали в переменную RespondSel:
<select name="d_theme">
<option id=1>Холодилники</option>
<option id=2>Пылесосы</option>
</select>
|
В обработчике просто задаёшь
document.GetElementById('secondSel').innerHTML = RespondSel;
|
собственно и все решение.
Можно конечно использовать DOM и передавать данные с помощью XML, но это уже сложнее.
В любом случае для экономии трафика конечного пользователя советую использовать именно AJAX , поэтому расписал про него. Надеюсь понятно. | |
|
|
|