You are here

public function MatchingResponse::save in Quiz 6.4

Same name and namespace in other branches
  1. 6.6 question_types/matching/matching.classes.inc \MatchingResponse::save()
  2. 6.3 question_types/matching/matching.classes.inc \MatchingResponse::save()
  3. 6.5 question_types/matching/matching.classes.inc \MatchingResponse::save()
  4. 7.6 question_types/matching/matching.classes.inc \MatchingResponse::save()
  5. 7 question_types/matching/matching.classes.inc \MatchingResponse::save()
  6. 7.4 question_types/matching/matching.classes.inc \MatchingResponse::save()
  7. 7.5 question_types/matching/matching.classes.inc \MatchingResponse::save()

Implementation of save

Overrides QuizQuestionResponse::save

See also

QuizQuestionResponse#save()

File

question_types/matching/matching.classes.inc, line 383
matching.classes

Class

MatchingResponse
Extension of QuizQuestionResponse

Code

public function save() {
  $user_answers = isset($this->answer) ? $this->answer : array();

  // to prevent warning : Invalid argument supplied for foreach()
  foreach ((array) $user_answers as $key => $value) {
    $score = $key == $value ? 1 : 0;
    $sql = 'INSERT INTO {quiz_matching_user_answers} (match_id, result_id, answer, score) VALUES (%d, %d, %d, %d)';
    db_query($sql, $key, $this->rid, (int) $value, $score);
  }
}