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

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

1. MBmusic - 13 Июня, 2012 - 18:55:41 - перейти к сообщению
в общем в базе есть куча строк......мне нужно сделать типо вывод всего что мне нужно из базы в переключатель свич......

ну типо так както(код неправильный):
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. switch($_POST["name"])
  3.           {
  4. while($avto_row = mysql_fetch_array($avto_op_n))
  5. {
  6.          case $avto_row['id']:
  7.          echo '<option>'.$avto_row['name'].'</option>';
  8.          break;
  9. }
  10. }
  11.  
2. Alho - 13 Июня, 2012 - 20:42:14 - перейти к сообщению
Не понятно, чего вы хотите добиться. Объясните, что называется, "на пальцах".
3. MBmusic - 13 Июня, 2012 - 21:15:30 - перейти к сообщению
Alho пишет:
Не понятно, чего вы хотите добиться. Объясните, что называется, "на пальцах".

в общем я делаю динамические списки......и столкнулся с проблемой......нашел пример типо когда в основном селекте чето выбираешь, то во втором выдается инфа по выбраному критерию в селекте......так вот код вывода во второй селект:

CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. if(isset($_POST["name"]) && $_POST["name"] > 0)
  3. {
  4. switch($_POST["name"]){
  5. case 1:
  6. echo 'Вы выбрали Вариант 1';
  7. break;
  8. case 2:
  9. echo 'Вы выбрали Вариант 2';
  10. break;
  11. case 3:
  12. echo 'Вы выбрали Вариант 3';
  13. break;
  14. }
  15.  
  16. }
  17. else{echo "Нету";}
  18. ?>


как видно из скрипта есть конструкция свич которая выводит переключатель для 1, 2, 3......НО если в базе например куча записей......1,2,3,...,500......я ж не буду пицот кейсов писать))) в общем кто делал интернет магазины те поймут эту проблему......я уже мучаюсь целый день и тупо не могу сделать...
4. Alho - 13 Июня, 2012 - 22:38:15 - перейти к сообщению
И тогда зачем вам дергать из базы все и еще и свитч?
Таки я не понимаю полностью)) Предлагаю так.

Вывод первого селекта:
PHP:
скопировать код в буфер обмена
  1. $out= '<select name="car">';
  2. while($avto_row = mysql_fetch_array($avto_op_n)){
  3. $out.="<option value=".$avto_row['id'].">".$avto_row['name']."</option>";
  4. }
  5. $out.="</select>";
  6. echo $out;
  7.  


А выводить информацию выдергивая только о нужном авто.
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM tablename WHERE id = {$_POST['car']} LIMIT 1;

 

Powered by ExBB FM 1.0 RC1