PHP.SU

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

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

> Найдено сообщений: 1
Хомяк Отправлено: 08 Июня, 2018 - 20:16:59 • Тема: Вывод нескольких рандомных элементов массива php по одному (а не сразу все) + кликабельные варианты ответов. • Форум: Вопросы новичков

Ответов: 1
Просмотров: 155
Есть php код, который из 5-ти элементов выбирает три. Но выводит на экран сразу все три элемента, а варианты выводит списком. Хотелось бы, чтобы каждый вопрос выводился отдельно: то есть выбирается первый рандомный появляется на экране, пользователь выбирает один вариант ответа и переходит к следующему.

Так вот, как сделать такой повопросный вывод и кликабельные варианты ответов?

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $arStrings = array(
  4.     array('question' => 'Вопрос 1', 'answers' => array('Ответ 1', 'Ответ 2', 'Ответ 3'), 'right' => 0),
  5.     array('question' => 'Вопрос 2', 'answers' => array('Ответ 1', 'Ответ 2', 'Ответ 3'), 'right' => 2),
  6.     array('question' => 'Вопрос 3', 'answers' => array('Ответ 1', 'Ответ 2', 'Ответ 3'), 'right' => 1),
  7.     array('question' => 'Вопрос 4', 'answers' => array('Ответ 1', 'Ответ 2', 'Ответ 3'), 'right' => 2),
  8.     array('question' => 'Вопрос 5', 'answers' => array('Ответ 1', 'Ответ 2', 'Ответ 3'), 'right' => 0),
  9. );
  10. $arUsed = array();
  11.  
  12. for($i = 0; $i < 3; $i++) {
  13.     do
  14.     {
  15.         $id = rand(0, count($arStrings)-1);
  16.     } while(in_array($id, $arUsed));
  17.     $arUsed[] = $id;
  18.  
  19.     ?>
  20.     <h2>Очередной вопрос: <?PHP echo $arStrings[$id]['question']; ?></h2>
  21.     <p>Варианты ответов:</p>
  22.     <ul>
  23.         <?PHP for($j = 0; $j < count($arStrings[$id]['answers']); $j++) { ?>
  24.         <li <?PHP if($arStrings[$id]['right'] == $j) echo 'class="right"'; ?>><?PHP echo $arStrings[$id]['answers'][$j]; ?></li>
  25.         <?PHP } ?>
  26.     </ul>
  27.     <?PHP
  28. }
  29. ?>

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB