Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> quiz w javascript
Kamil9477
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 13.06.2014

Ostrzeżenie: (0%)
-----


Witam, mam problem ze skryptem sprawdzającym ilość poprawnych odpowiedzi w quizie.
Napisałem jakiś skrypt (jestem zielony jeśli chodzi o JS), lecz nawet jak zaznaczę jakieś poprawne odpowiedzi to i tak wyskakuję alert że zaznaczyłem 0/10 poprawnych. Proszę o pomoc.

Kod
<script language="javascript" type="text/javascript">
function weryfikuj()
{

var punkty = 0;
var pop1=document.getElementsByName("poprawna");
var pop2=document.getElementsByName("poprawna2");
var pop3=document.getElementsByName("poprawna3");
var pop4=document.getElementsByName("poprawna4");
var pop5=document.getElementsByName("poprawna5");
var pop6=document.getElementsByName("poprawna6");
var pop7=document.getElementsByName("poprawna7");
var pop8=document.getElementsByName("poprawna8");
var pop9=document.getElementsByName("poprawna9");
var pop10=document.getElementsByName("poprawna10");

if (pop1.checked )
{
punkty = punkty+1;
}
if (pop2.checked)
{
punkty = punkty+1;
}
if (pop3.checked)
{
punkty = punkty+1;
}
if (pop4.checked )
{
punkty = punkty+1;
}
if (pop5.checked )
{
punkty = punkty+1;
}
if (pop6.checked )
{
punkty = punkty+1;
}
if (pop7.checked )
{
punkty = punkty+1;
}
if (pop8.checked )
{
punkty = punkty+1;
}
if (pop9.checked )
{
punkty = punkty+1;
}
if (pop10.checked )
{
punkty = punkty+1;
}
alert ("Udzieliłeś " +punkty+ "/10  poprawnych odpowiedzi");
}

</script>


wklejam także formularz:
Kod
<form>
<p class="quiz"> Pyt. 1 Który kraj jest największy na świecie? <br>
<input type="radio" name="poprawna"> Rosja <br>
<input type="radio"> Chiny <br>
<input type="radio"> Stany Zjednoczone <br>
<input type="radio"> Brazylia <br> </p>
<hr>
<p class="quiz"> Pyt. 2 Częścią jakiego kraju jest Alaska? <br>
<input type="radio"> Rosji <br>
<input type="radio"> Kanady <br>
<input type="radio" name="poprawna2"> Stanów Zjednoczonych <br>
<input type="radio"> Meksyku <br> </p>
<hr>
<br>
<center><img src="waw.jpg" alt="obrazek"></center> <br>
<p class="quiz"> Pyt. 3 Co przedstawia powyższy obrazek? <br>
<input type="radio" name="poprawna3"> Wawel w Krakowie <br>
<input type="radio"> Zamek krzyżacki w Malborku <br>
<input type="radio"> Zamek Książ <br>
<input type="radio"> Zamek Królewski w Warszawie <br> </p>
<hr>
<p class="quiz"> Pyt. 4 Jakie jest najgłębsze jezioro w Polsce? <br>
<input type="radio"> Mamry <br>
<input type="radio" name="poprawna4"> Hańcza <br>
<input type="radio"> Gopło <br>
<input type="radio"> Śniardwy <br> </p>
<hr>
<p class="quiz"> Pyt. 5 Jakie miasto jest stolicą Francji? <br>
<input type="radio"> Lyon <br>
<input type="radio"> Marsylia <br>
<input type="radio"> Bordeaux <br>
<input type="radio" name="poprawna5"> Paryż <br> </p>
<hr>
<p class="quiz"> Pyt 6. Jak nazywa się najdalej na południe wysunięty punkt Afryki ? <br>
<input type="radio" name="poprawna6">Przylądek Igielny<br>
<input type="radio">Przylądek Dobrej Nadziei<br>
<input type="radio">Przylądek Horn<br>
<input type="radio">Przylądek Rocca<br> </p>
<hr>
<p class="quiz"> Pyt 7. Które państwo sąsiaduje z Polską? <br>
<input type="radio" name="poprawna7">Niemcy <br>
<input type="radio"> Hiszpania<br>
<input type="radio"> Francja <br>
<input type="radio"> Włochy <br> </p>
<hr>
<p class="quiz"> Pyt 8. Które miasto leży w województwie Lódzkim? <br>
<input type="radio"> Radom<br>
<input type="radio" name="poprawna8"> Radomsko <br>
<input type="radio"> Ełk <br>
<input type="radio"> Sanok <br> </p>
<hr>
<p class="quiz"> Pyt 9. Najgłebsze jezioro na świecie to? <br>
<input type="radio"> Tanganika <br>
<input type="radio"> Wielkie Jezioro Niedźwiedzie <br>
<input type="radio" name="poprawna9"> Bajkał <br>
<input type="radio"> Onega <br> </p>
<hr>
<p class="quiz"> Pyt 10. Najdłuższa rzeka w Europie to? <br>
<input type="radio"> Wisła <br>
<input type="radio"> Ren <br>
<input type="radio"> Loara <br>
<input type="radio" name="poprawna10"> Wołga <br> </p>
<input type="submit" value="sprawdz!" onclick="weryfikuj()">
</form>

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kamil9477
post
Post #2





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 13.06.2014

Ostrzeżenie: (0%)
-----


No tak ja to rozumiem że można podejrzeć, ale to nie jest do używania na prawdę tylko na projekt do szkoły. Czyli co muszę teraz mienić w tym skrypcie? Czy on wgle jest całkowicie zły?

Dobra znalazłem inny skrypt który działa i mam pytanie czy można do niego dodać coś żeby nie wyświetlał samej ilości punktów ale także ocenę, np. 0-4 pkt 2, 5-6 pkt 3, 7 pkt 3+, 8 pkt 4, 9 pkt 4+ i 10 pkt 5.

Skrypt:
Kod
<script language="javascript" type="text/javascript">
function total()
{
var k=0;
var radios = document.getElementsByName('quiz');
  var radios1 = document.getElementsByName('quiz1');
   var radios2 = document.getElementsByName('quiz2');
    var radios3 = document.getElementsByName('quiz3');
     var radios4 = document.getElementsByName('quiz4');
      var radios5 = document.getElementsByName('quiz5');
       var radios6 = document.getElementsByName('quiz6');
        var radios7 = document.getElementsByName('quiz7');
         var radios8 = document.getElementsByName('quiz8');
          var radios9 = document.getElementsByName('quiz9');
for (var i = 0, length = radios.length; i < length; i++) {
    if (radios[i].checked) {
        k=parseInt(k)+parseInt(radios[i].value);
        break;
    }
}
for (var i = 0, length = radios1.length; i < length; i++) {
    if (radios1[i].checked) {
        k=parseInt(k)+parseInt(radios1[i].value);
        break;
    }
}
for (var i = 0, length = radios2.length; i < length; i++) {
    if (radios2[i].checked) {
        k=parseInt(k)+parseInt(radios2[i].value);
        break;
    }
}
for (var i = 0, length = radios3.length; i < length; i++) {
    if (radios3[i].checked) {
        k=parseInt(k)+parseInt(radios3[i].value);
        break;
    }
}
for (var i = 0, length = radios4.length; i < length; i++) {
    if (radios4[i].checked) {
        k=parseInt(k)+parseInt(radios4[i].value);
        break;
    }
}
for (var i = 0, length = radios5.length; i < length; i++) {
    if (radios5[i].checked) {
        k=parseInt(k)+parseInt(radios5[i].value);
        break;
    }
}
for (var i = 0, length = radios6.length; i < length; i++) {
    if (radios6[i].checked) {
        k=parseInt(k)+parseInt(radios6[i].value);
        break;
    }
}
for (var i = 0, length = radios7.length; i < length; i++) {
    if (radios7[i].checked) {
        k=parseInt(k)+parseInt(radios7[i].value);
        break;
    }
}
for (var i = 0, length = radios8.length; i < length; i++) {
    if (radios8[i].checked) {
        k=parseInt(k)+parseInt(radios8[i].value);
        break;
    }
}
for (var i = 0, length = radios9.length; i < length; i++) {
    if (radios9[i].checked) {
        k=parseInt(k)+parseInt(radios9[i].value);
        break;
    }
}
alert("Twój wynik to "+parseInt(k)+" na 10");
}
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 13:20