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
Форумы портала PHP.SU :: Версия для печати :: Динамический выбор SELECT
Форумы портала PHP.SU » » Вопросы новичков » Динамический выбор SELECT

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

1. myvin - 07 Августа, 2018 - 14:14:42 - перейти к сообщению
сразу к делу. Имеем код:

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $mysql_database="mc";
  4. $mysql_username="root";
  5. $mysql_password="";
  6. $mysql_host="localhost";
  7. $db = mysql_connect($mysql_host, $mysql_username, $mysql_password);
  8. mysql_select_db($mysql_database,$db);
  9. $getraz = mysql_query("SELECT id_model,model,name FROM sklad WHERE id = 1",$db) or die(mysql_error());
  10. echo '<form action="action.php" method="post"><select name="baza_minus">';
  11. while ($myrow = mysql_fetch_array ($getraz)) {
  12. echo '<option value=' . $myrow['id_model'] . '>' . $myrow['model'] . '&nbsp;' . $myrow['name'] . '</option>';
  13. }
  14. ?>
  15. </select>
  16.  


как мы видим из кода, выведутся все столбцы в select, где каждый имеет свой option value= ['id_model'], который принадлежит к ID 1. Всё хорошо, у нас выводится вся информация в select, которая принадлежит ID 1. как мне сделать так, чтоб выше этого Select-а был еще один, где я мог выбрать ID 2, и ниже него уже попадали во второй select информация, которая принадлежит к id 2
2. andrewkard - 07 Августа, 2018 - 23:06:46 - перейти к сообщению
Варианты есть, можно повесить на первый селект событие change, и аяксом запрашивать подселекты и отрисовывать. Можно сразу записать во второй селект optgroups со значениями первого селекта и тоже по событию chahge во второй селект подставлять нужный html.
Можно впечатать в код все эти селекты и брать значения оттуда, например в строке base64.
Решать Вам.
3. Doox911 - 08 Августа, 2018 - 08:08:19 - перейти к сообщению
Я бы разделил логику, поведение и отображение, например паттерн MVC).И используйте PDO. Тут либо аяксом либо через гет каждый раз перегружать стр.

 

Powered by ExBB FM 1.0 RC1