You are here

function quiz_store_question_result in Quiz 6.2

Same name and namespace in other branches
  1. 8.4 quiz.module \quiz_store_question_result()
  2. 5.2 quiz.module \quiz_store_question_result()
  3. 6.6 quiz.module \quiz_store_question_result()
  4. 6.3 quiz.module \quiz_store_question_result()
  5. 6.4 quiz.module \quiz_store_question_result()
  6. 6.5 quiz.module \quiz_store_question_result()
  7. 7.6 quiz.module \quiz_store_question_result()
  8. 7 quiz.module \quiz_store_question_result()
  9. 7.4 quiz.module \quiz_store_question_result()
  10. 7.5 quiz.module \quiz_store_question_result()

Store a quiz question result.

1 call to quiz_store_question_result()
quiz_take_quiz in ./quiz.module
Handles quiz taking.

File

./quiz.module, line 872
Quiz Module

Code

function quiz_store_question_result($nid, $vid, $rid, $is_correct) {

  //watchdog('quiz', 'quiz_store_question_result: storing.');
  $result = db_result(db_query("SELECT COUNT('result_id') AS count FROM {quiz_node_results_answers} WHERE question_nid = %d AND question_vid = %d AND result_id = %d", $nid, $vid, $rid));
  if ($result && $result['count'] > 0) {

    //watchdog('quiz', 'quiz_store_question_result: updating');
    db_query("UPDATE {quiz_node_results_answers} " . "SET is_correct = %d, points_awarded = %d, answer_timestamp = %d " . "WHERE question_nid = %d AND question_vid = %d AND result_id = %d", $is_correct, $is_correct ? 1 : 0, time(), $nid, $vid, $rid);
  }
  else {

    //watchdog('quiz', 'quiz_store_question_result: inserting');
    db_query("INSERT INTO {quiz_node_results_answers} " . "(question_nid, question_vid, result_id, is_correct, points_awarded, answer_timestamp) " . "VALUES (%d, %d, %d, %d, %d, %d)", $nid, $vid, $rid, $is_correct, $is_correct ? 1 : 0, time());
  }
}