Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
nz
Зарегистрирован: 21.12.2002 Сообщения: 71
|
Добавлено: Пн Сен 25 2006 11:48 Заголовок сообщения: Динамическое получение данных для странички |
|
|
Вот такая загагулина!
День добрый господа!
У меня сложилась трудная ситуация, нужна реал про помощь.
У меня есть PHP страничка. На ней есть 2 <SELECT>'a. Первый - это список областей. Второй - это список городов, для каждой области. Также есть БД на MySQL, которая имеет 2 связанные таблицы, одна по областям, а вторая по городам.
Когда пользователь заходит на страничку выполняется PHP скрипт, который берет данные из БД и заполняет селекты полными списками, независимо от их связи (т.е. в селекты с городами, появляется полный перечень городов для всех областей). Это не удобно.
Мне надо, чтобы второй селект, заполнялся на основе первого. Т.е. появляется страничка, пользователь выбирает область (при этом селект с городами еще пуст). После выбора области он переходит к выбору города, и этот список должен сформироваться на основе значения первого селекта. Как это реализовать?
Хелп ми плиз!!
С Уважением,
Ух
P.S. я юзаю apache 2.x, PHP 5.x, MySQL 5.x
Вот такая загагулина! |
|
Вернуться к началу |
|
|
dipsy
Зарегистрирован: 26.01.2005 Сообщения: 424 Откуда: Н. Новгород
|
Добавлено: Пн Сен 25 2006 12:07 Заголовок сообщения: |
|
|
а вариант с перезагрузкой страницы не пойдёт?
то есть - показываем области, а после выбора делаем запрос к БД и показываем список с городами? |
|
Вернуться к началу |
|
|
Alex_pm
Зарегистрирован: 26.08.2006 Сообщения: 55
|
Добавлено: Пн Сен 25 2006 14:46 Заголовок сообщения: |
|
|
Если не хочешь страницу перезагружать, придется ЯваСкриптом второй список курочить. |
|
Вернуться к началу |
|
|
nz
Зарегистрирован: 21.12.2002 Сообщения: 71
|
Добавлено: Вт Сен 26 2006 12:07 Заголовок сообщения: Продолжаем |
|
|
Господа!!!!
Вариант с перезагруской страницы, то, что надо, но я не знаю как его реализовать. Подскажите плиз. Какой принцип в этом заложет, т.е. какие функции надо использовать. Я прогер на VC++ и в ПХП шарю лишь поверхностно.
Спасибо огромное!!!!!!!!!!
Ух |
|
Вернуться к началу |
|
|
gorbunaak
Зарегистрирован: 31.05.2005 Сообщения: 12 Откуда: Москва
|
Добавлено: Вт Сен 26 2006 14:09 Заголовок сообщения: |
|
|
думаю javascript'ом реально лучше, ничего особо сложного не получиться, и страница перегружаться не будет |
|
Вернуться к началу |
|
|
nz
Зарегистрирован: 21.12.2002 Сообщения: 71
|
Добавлено: Вт Сен 26 2006 14:28 Заголовок сообщения: javascript |
|
|
gorbunaak писал(а): | думаю javascript'ом реально лучше, ничего особо сложного не получиться, и страница перегружаться не будет |
А как это корректно сделать на JS?
Все данные держать в файле? Мне бы этого не хотелось
У меня ситуация такая, 20 областей, в каждой по 30 городов, и на самом деле есть еще одно поле, про которое я не писал, но буду делать аналогично, т.е. еще есть и районы у каждого города, их, в среднем по 5. Итого мы получаем, 600 городов, и 3000 районов, а они все длиной по 10 и более симвлов.
И все это содержится в БД, а может ли JS работать с БД? Я не знаю Покрайней мере функций не нашел.
Думаю вариант c JS мне придется отбросить, хотя бы даже потому, что передавать и обрабатывать туеву хучу данных будет муторно.
Вощем я окончательно запутался |
|
Вернуться к началу |
|
|
nz
Зарегистрирован: 21.12.2002 Сообщения: 71
|
Добавлено: Вт Сен 26 2006 14:41 Заголовок сообщения: |
|
|
а что касается обновления, кажется я начал догонять.
Нужно в теге в параметре указать эту же мою страничку, так?
И в ней же весь код и обрабатывать, я правильно понимаю?
Тогда еще вопрос, а как сделать так, чтобы при выборе из селекта области начинался рефреш странички??? вот так?:
Код: | <select ... onchange="javascript: здесь функция посылающая на рефреш, а какая????... |
Ну хорошо, произошел рефреш, а как сделать так, чтобы все те данные, которые пользователь ввел в другие поля, не сбросились. А в селекте с областью отобразилось новое значение????
Господа!!! Простите за грузон, но очень надо, выручайте плиз!!
10000 спасибо.
С Уважением,
замученный Ух |
|
Вернуться к началу |
|
|
Neeoon
Зарегистрирован: 19.11.2004 Сообщения: 173 Откуда: Ukraine
|
Добавлено: Вт Сен 26 2006 15:31 Заголовок сообщения: |
|
|
Цитата: | Вариант с перезагруской страницы, то, что надо, но я не знаю как его реализовать. |
<form name=form1>
<select name="obl" onChange="document.location=form1.obl.value;">
<?
$res=mysql_query("SELECT * FROM regions");
while ($rows=mysql_fetch_array($res)) {
if ($obl==$rows[id]) $select="selected"; else $select="";
echo "<option value=index.php?obl=$rows[id] $select>$rows[name]";
}
?>
</select>
</form>
<?
if ($obl) {
$res=mysql_query("SELECT * FROM citys WHERE id_obl='$obl' ");
while ($rows=mysql_fetch_array($res)) {
echo $rows[name];
}
}
?>
Попробуй так, должно получится _________________ Всё, что ни делается, - всё к лучшему! |
|
Вернуться к началу |
|
|
|