Я создаю викторину для клиента, который хочет, чтобы результаты их викторины автоматически сохранялись, и я столкнулся с проблемой, я пытаюсь выбрать все вопросы, на которые пользователь не ответил в определенной викторине, я сохраняя результат каждого вопроса, на который был дан ответ, в таблицу RESULTS
, но мое утверждение путается, когда более одного пользователя имеют результаты в таблице RESULTS
, если бы кто-нибудь мог взглянуть на мой код и дать мне какой-либо совет, это было бы очень много оценил. Заранее спасибо!
Основываясь на этих таблицах и заявлении, следующий вопрос, который мне нужно загрузить, это que_id = 3
для use_id = 1
, но проблема, с которой я столкнулся, заключается в том, что он возвращает que_id = 1
и que_id = 3
, потому что на них ответили пользователи use_id = 2
и use_id 3
, еще раз спасибо!
ТАБЛИЦА ВОПРОСОВ
que_id qui_id que_question que_ans_id
1 1 lorem 1? 1
2 1 lorem 2? 6
3 1 lorem 3? 12
ТАБЛИЦА РЕЗУЛЬТАТОВ
res_id res_use_id res_qui_id res_que_id res_ans_id
1 1 1 1 2
2 1 1 2 6
3 2 1 3 10
4 3 1 1 1
PHP
$statement_question = $db->prepare("SELECT * FROM roa_quiz
LEFT JOIN roa_questions ON qui_id = que_qui_id
LEFT JOIN roa_results ON que_id = res_que_id
WHERE qui_id = :qui_id AND res_use_id != :use_id");
$statement_question->setFetchMode(PDO::FETCH_ASSOC);
$statement_question->execute(array(':qui_id' => 1, ':use_id' => 1));
$question = $statement_question->fetch();