29
Апр
2018

Система вопрос ответ на php

У меня есть база данных с вопросами где есть три колонки. Id , answer , question. ID auto_increment индекс primary. В коде я делаю запрос на вопросы и ответы. Мне нужно, как-то привязать первый ответ именно к первому вопросу. Чтобы если был выведен первый вопрос на него был только один ответ. Всего в базе 6 строк, но их будет больше. Вот код.

<?php
// Подключение у БД
mysql_connect("localhost", "root", "") or die (mysql_error ());
mysql_select_db("school48") or die(mysql_error());

// Запросы на вопросы и ответы

$questionAnswer1 = mysql_query('SELECT answer, question FROM `answer_from_user` WHERE id="0"');
$questionAnswerRow1 = mysql_fetch_assoc($questionAnswer1);
$questionAnswer2 = mysql_query('SELECT answer, question FROM `answer_from_user` WHERE id="1"');
$questionAnswerRow2 = mysql_fetch_assoc($questionAnswer2);
$questionAnswer3 = mysql_query('SELECT answer, question FROM `answer_from_user` WHERE id="2"');
$questionAnswerRow3 = mysql_fetch_assoc($questionAnswer3);
$questionAnswer4 = mysql_query('SELECT answer, question FROM `answer_from_user` WHERE id="3"');
$questionAnswerRow4 = mysql_fetch_assoc($questionAnswer4);
$questionAnswer5 = mysql_query('SELECT answer, question FROM `answer_from_user` WHERE id="4"');
$questionAnswerRow5 = mysql_fetch_assoc($questionAnswer5);
$questionAnswer6 = mysql_query('SELECT answer, question FROM `answer_from_user` WHERE id="5"');
$questionAnswerRow6 = mysql_fetch_assoc($questionAnswer6);

// Упрощение переменных

// Создание массива с вопросами

$questions = array();
$questions[] = $questionAnswerRow1['question'];
$questions[] = $questionAnswerRow2['question'];
$questions[] = $questionAnswerRow3['question'];
$questions[] = $questionAnswerRow4['question'];
$questions[] = $questionAnswerRow5['question'];
$questions[] = $questionAnswerRow6['question'];


// Создание массива с ответами 

$answers = array();
$answers[] = $questionAnswerRow1['answer'];
$answers[] = $questionAnswerRow2['answer'];
$answers[] = $questionAnswerRow3['answer'];
$answers[] = $questionAnswerRow4['answer'];
$answers[] = $questionAnswerRow5['answer'];
$answers[] = $questionAnswerRow6['answer'];



// Получение доступа к полю ввода ответа

$label = $_REQUEST['label'];
$label = htmlspecialchars($_REQUEST["label"]);

// Проверка запроса

if (!$questionAnswer1 || !$questionAnswer2 || !$questionAnswer3 || !$questionAnswer4 || !$questionAnswer5 || !$questionAnswer6) {
      echo 'Ошибка запроса: ' . mysql_error();
exit;
}

// Сравнение ответа

if (!empty($_REQUEST['label'])) {
    if ($_REQUEST['label'] == $answers['0']) {
        echo 'Answer Right' . '<br>';

 } else echo 'Answer False' . '<br>';
}

// Рандомное генерирование вопросов
$rand_values = mt_rand(0 , count($questions) - 1);

echo $questions[$rand_values];
echo '<br>'; 
echo '<input type="text" placeholder="Введите ответ например 1992г" name="label"/>';
echo '<button>'.Отправить.'</button>';
?>
</form>

Источник: https://ru.stackoverflow.com/questions/821138/%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0-%D0%B2%D0%BE%D0%BF%D1%80%D0%BE%D1%81-%D0%BE%D1%82%D0%B2%D0%B5%D1%82-%D0%BD%D0%B0-php

Тебе может это понравится...

Добавить комментарий