Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Выпадающий список на основе радио-кнопок

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Adamson
Отправлено: 04 Ноября, 2013 - 18:45:45
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Нояб. 2013  


Помог: 0 раз(а)




Добрый день уважаемое сообщество.
Помогите решить задачу, не знаю, с какой стороны подойти...

Задача следующая

Есть форма,на которой имеются 2 радио-кнопки.
Задача - слелать так, что-бы выпадающий список формировался на основе разных запросов к БД.
 
 Top
deblogger
Отправлено: 04 Ноября, 2013 - 18:54:14
Post Id


Новичок


Покинул форум
Сообщений всего: 59
Дата рег-ции: Нояб. 2013  


Помог: 0 раз(а)

[+]


Под пытками будем узнавать в чем там проблема. Может гвозди под ногти не лезут?
 
 Top
teddy
Отправлено: 04 Ноября, 2013 - 18:54:50
Post Id


Участник


Покинул форум
Сообщений всего: 1462
Дата рег-ции: Апр. 2013  


Помог: 91 раз(а)




CODE (html):
скопировать код в буфер обмена
  1. <form action="" method="post">
  2.     <input type="radio" name="getlist" value="one">
  3.     <input type="radio" name="getlist" value="two">
  4.     <input type="submit" value="Получить список">
  5. </form>

PHP:
скопировать код в буфер обмена
  1.  
  2. if(isset($_POST['getlist'])){
  3.     echo $_POST['getlist'];
  4. }
  5.  

Как видите, значение $_POST['getlist'] меняется в зависимости от выбранной кнопки. Можно положить это значение в переменную, которая будет подставляться в ваш запрос, а результат запроса уже выводить в <option>, тоесть в выпадающий список.
 
 Top
Adamson
Отправлено: 04 Ноября, 2013 - 19:13:30
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Нояб. 2013  


Помог: 0 раз(а)




teddy пишет:
CODE (html):
скопировать код в буфер обмена
  1. <form action="" method="post">
  2.     <input type="radio" name="getlist" value="one">
  3.     <input type="radio" name="getlist" value="two">
  4.     <input type="submit" value="Получить список">
  5. </form>

PHP:
скопировать код в буфер обмена
  1.  
  2. if(isset($_POST['getlist'])){
  3.     echo $_POST['getlist'];
  4. }
  5.  

Как видите, значение $_POST['getlist'] меняется в зависимости от выбранной кнопки. Можно положить это значение в переменную, которая будет подставляться в ваш запрос, а результат запроса уже выводить в <option>, тоесть в выпадающий список.


А можно сделать это без отправки данных на сервер?
 
 Top
teddy
Отправлено: 04 Ноября, 2013 - 19:16:19
Post Id


Участник


Покинул форум
Сообщений всего: 1462
Дата рег-ции: Апр. 2013  


Помог: 91 раз(а)




Adamson пишет:
Задача - слелать так, что-бы выпадающий список формировался на основе разных запросов к БД.

Adamson пишет:
А можно сделать это без отправки данных на сервер?

Нет.
 
 Top
IllusionMH
Отправлено: 04 Ноября, 2013 - 19:28:15
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




Adamson, можно. Если заранее создать два списка и скрыть их. После выбора радиобаттона - показывать соответствующий.
Если такой вариант не катит, то как без запросов сервер угадает что нужно клиенту?
Другой вопрос, что это можно делать без перезагрузки страницы. Тогда в любимом поисковике ищите "связанные выпадающие списки ajax"
 
 Top
Adamson
Отправлено: 04 Ноября, 2013 - 19:42:56
Post Id


Новичок


Покинул форум
Сообщений всего: 8
Дата рег-ции: Нояб. 2013  


Помог: 0 раз(а)




IllusionMH
Благодарю за подсказку
Ушел читать
Если кому интересно - ссылка
http://www[dot]freeartists[dot]ru/articl[dot][dot][dot]ng/ajax-selects/
 
 Top
deblogger
Отправлено: 05 Ноября, 2013 - 04:03:50
Post Id


Новичок


Покинул форум
Сообщений всего: 59
Дата рег-ции: Нояб. 2013  


Помог: 0 раз(а)

[+]


Adamson пишет:
Если кому интересно - ссылка


По ссылке - бред. Так не делают.

Делают вот так. Если связанные свойства простые, скажем ботинки - размеры, то размеры загружаются все и могут быть выбраны в браузере. Если связанные свойства сложные, скажем автомобиль - ТТХ, цвет, опции фарша - то в ответ на выбор модели загружается весь фарш. В котором опять же сложные запросы перезагружают страницу, а простые уже загружены в хтмл или хтмл+скрипт.

Домен ajax'а это гамы и сервис. Продуктовые страницы работают нормально, без аякса.
(Добавление)
С ботинками аналогично. Допустим такое дерево:

обувь
- женская
- мужская
- детская

Аяксом будете загружать весь раздел мужской обуви? Коню ясно - полностью. Затем

- зимняя
- летняя
- всесезонная
- шипованная

Зимнюю всю будете грузить аяксом? Там может быть сотня или две моделей в наличии и под заказ. Нажали зимняя, перезагрузили страницу, показали что есть

- артикул 01
- артикул 22
- артикул 9383

Вот теперь на артикул 01 вы можете повесить список артикулов 02 тире 21 с размерами. И выбор размера уже не потребует перезагрузки, потому что простой список уже весь загружен.

Юзер выбрал артикул 15 - жмет купить - в корзину кладется артикул => количество. Готово.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB