"Doğru Yanıt" için Radyo Düğmesi denetleniyor

1 Cevap

Ben yaşıyorum bir sorunu anlamaya biraz ekstra yardıma ihtiyacım var. http://stackoverflow.com/questions/2134056/checking-correct-answer-and-submitting-form, ama burada temelleri var: Burada bu konuda ayrıntı büyük bir görebilirsiniz.

  1. Proje 10 soru sayfaları ve 1 sonuç sayfasında oluşan bir just-için-eğlenceli quiz.
  2. Submitting a Form composed of 3 Radio buttons, 1 is correct.
  3. Güvenlik bir sorun değildir.
  4. JavaScript, tüm PHP / HTML / CSS (mobil tarayıcılar ve sınırlamaları vs) kullanamazsınız
  5. Form action sonraki sayfaya kullanıcı alır.

Nasıl doğru cevap seçebilirsiniz (kodlanmış olabilir) ve nasıl bir kullanıcı olarak doğru cevaplar sayısının sayfalarında devam kaydedebilirim?

<?php 
    /* Gets current correct answer Count */ 
    $answer_count = $_GET["p"]; 

    /* checks to see if the submitted answer is the same as the correct answer */
    if ($_POST["submitted-answer"] == "correct-answer") {
        $answer_count++;
    }
?>

Form HTML:

<form name="quiz" action="" method="POST">
<label for="o1"><input type="radio" name="grp" id="o1" value="o1"> Label 1</label>
<label for="o2"><input type="radio" name="grp" id="o2" value="o2"> Label 2</label>
<label for="o3"><input type="radio" name="grp" id="o3" value="o3"> Label 3</label>
<input type="submit" value="Next Question" class="btn">
</form>

Benim radyo düğmelerinin değerleri şu anda gerekli değildir. Ben iki yanlış cevaplar ve değer doğru biri = "doğru" bir şey kullanan value = "yanlış" kullanabilir miyim?

1 Cevap

Doğru cevap sayısını izlemek için muhtemelen PHP oturumları kullanmak isterim. Sadece session_start eklemek (); kodunun başında, ilk soruya sıfıra bazı oturum değişkeni ayarlamak ve sınav bittikten sonra oturumu yok.

<?php
session_start();
if ([check if first question and unanswered]) {
  $_SESSION['correct_answers'] = 0;
}
if ([check if question answered and correctly]) {
  $_SESSION['correct_answers']++;
}
if ([check, if that was the final question]) {
  [do some magic with the number of correct answers]
  $_SESSION['correct_answers'] = 0; // no turning back now!
}

Onun gibi bir şey.