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]   

> Без описания
Fetis
Отправлено: 03 Июня, 2013 - 15:07:37
Post Id



Частый гость


Покинул форум
Сообщений всего: 153
Дата рег-ции: Дек. 2012  
Откуда: Киров, Россия


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




Приветствую всех. Сижу уже долго и думаю, как сделать проверку: если в вопросе несколько правильных ответов то выводи этот вопрос и ответы checkbox.

Данный код выводит только если в вопросе один ответ, как замутить проверку:

PHP:
скопировать код в буфер обмена
  1.  
  2. $q_a = "SELECT Id_item, Id_ask, Name_ask, True_answer From ask where $t_item = Id_item and $p <> Id_ask ".$ty."  LIMIT 1";
  3. $askd = mysql_fetch_array($q_a);
  4. $adu = $askd['Id_ask'];
  5. $ans = mysql_query("SELECT Id_ask,Id_answer,Name_answer From answer Where Id_ask=$adu");
  6.  
  7. echo '<table border="1" bordercolor="#FF655" style="background-color:#00000" width="100%" cellpadding="1" cellspacing="2">
  8. <tr><td style="width: 100%;"><p style = "text-align: center;font-size: 20px;">'.$askd['Name_ask'].'</p></td></tr>';
  9. echo '<form action="" method="post">';
  10.  
  11. $d = 0;
  12. $gr = mysql_num_rows($q_a);
  13.  
  14.  
  15. if($d != $gr){
  16.     $d++;
  17.  
  18. while($adq = mysql_fetch_assoc($ans) ){
  19.  
  20.     echo '<tr><td>Ответ:
  21. <input type="radio" name="answer" value="'.$adq['Id_answer'].'"/>'.$adq['Name_answer'].'</td>
  22. </tr>';
  23. };
  24. echo '</table>';
  25. echo '<input type="hidden" name="id_ask" value="'.$adu.'"/>'; // id вопроса на который ответил.
  26. echo '<input type="submit" name="ok" value="Ответить"/>
  27. <br><input type="submit" name="ed" value="Завершить тестирование"/>
  28. </form></br>';
  29.  

(Отредактировано автором: 03 Июня, 2013 - 15:26:12)

 
 Top
ingram
Отправлено: 03 Июня, 2013 - 16:34:08
Post Id



Гость


Покинул форум
Сообщений всего: 65
Дата рег-ции: Июнь 2010  


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




Самый простой способ, составить еще один запрос, и посчитать сколько правильных ответов у вопроса.

что типа типа:
CODE (SQL):
скопировать код в буфер обмена
  1. $anstrue = mysql_query("SELECT count(*) FROM answer WHERE Id_ask=$adu AND pravilniy_ovet = true");


После чего проверяем, если ответов больше 1 то checkbox, если 1 то радио

(Отредактировано автором: 03 Июня, 2013 - 17:21:39)

 
 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