Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> TEST, TEST WIELOKROTNEGO WYBORU-POMOCY
padalec
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.02.2005

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


Czesc mam problem!!!!

Napisalem skrypcik testu wielokrotnego wyboru no i jest z nim maly problem jak wybierasz odpowiedz to nie jest ona zapisywana w tablicy.Zostaje zapisana tylko odp. ostatnia.PS jest to test wielokrotnego wyboru a wiec uzytkownik moze wybrac kilka odp. no i z tym mam tez problem bardzo prosze o pomoc wysalam wraz z listem ten skrypcik

Za pomoc z góry dziekuje!!!

aaevil.gif



//ta zmienna jest inicjowana gdy odpowiadamy na ostatnie pytanie
  1. <?php
  2.  
  3. if(!isset($koniec)&&($koniec!='koniec'))
  4. {
  5. global $biezace_pytanie;
  6. if(!lacz_bd()) echo &#092;"Nie mozna polaczyc sie z baza danych MySQL:\".mysql_error;
  7. $wynik=@mysql_query(&#092;"SELECT * FROM $pytania\"); 
  8. $pytania=wynik_bd_do_tablicy($wynik);
  9. $liczba_wyswietlanych_pytan=1;
  10. $liczba_pytan=count($pytania);
  11. if(!$biezace_pytanie)$biezace_pytanie=1;
  12. if(!$liczba_pytan)$liczba_stron=1;
  13. else $liczba_stron=ceil($liczba_pytan/$liczba_wyswietlanych_pytan);
  14. if($bierzace_pytanie>=$liczba_stron)$biezace_pytanie=$liczba_stron;
  15. $numer_poczadkowy=($biezace_pytanie-1)*$liczba_wyswietlanych_pytan;
  16. $numer_koncowy=$biezace_pytanie*$liczba_wyswietlanych_pytan;
  17. if($numer_koncowy > $liczba_pytan)$numer_koncowy=$liczba_pytan;
  18. echo &#092;"
    1. <form method=\"post\" action=\"\".$_SERVER['PHP_SELF'].\"\">
    \";
  19. echo &#092;"
    1. <table border=\"0\">
    \";
  20. $user_answer=$_SESSION['user_answer'];
  21.  
  22. for($i=$numer_poczadkowy;$i<$numer_koncowy;$i++)
  23. {
  24. echo <<<[HTML]
  25. <tr><td>Pytanie:$biezace_pytanie/$liczba_pytan</td></tr>
  26. <tr><td colspan=&#092;"3\"><br><b>$pytania[$i][question]</b></td></tr>
  27. <tr>
  28. //tutaj wyswietlamy mozliwe odpowiedzi na pytanie opt-sa to odpowiedzi w bazie danych
  29. <td>$pytania[$i][opt1]<input type=&#092;"checkbox\" name=user_answer value=\"$pytania[$i][opt1]\"></td>
  30. <td>$pytania[$i][opt2]<input type=&#092;"checkbox\" name=user_answer value=\"$pytania[$i][opt2]\"></td>
  31. <td>$pytania[$i][opt3]<input type=&#092;"checkbox\" name=user_answer value=\"$pytania[$i][opt3]\"></td>
  32. </tr>
  33. </table>
  34. [/HTML]
  35. }
  36. for($i=1;$i<=$liczba_stron;$i++)
  37. {
  38. if($biezace_pytanie==$liczba_stron)
  39. { 
  40. echo &#092;"
    1. <input type='hidden' name='koniec' value='koniec'>
    \";
  41. }
  42. else
  43. {
  44. echo '
    1. <input type=<span class="es0">\"</span>hidden<span class="es0">\"</span> name=<span class="es0">\"</span>biezace_pytanie<span class="es0">\"</span> value=<span class="es0">\"</span>'</span><span class="sy0">.</span><span class="re0">$i</span><span class="sy0">.</span><span class="st0">'<span class="es0">\"</span>>
    '
    ;
  45. }
  46. echo '
    1. <input type=<span class="es0">\"</span>submit<span class="es0">\"</span> value=<span class="es0">\"</span>Zapisz odpowiedzi<span class="es0">\"</span> name=<span class="es0">\"</span>submit<span class="es0">\"</span>>
    '
    ;
  47. echo '
    1. </form>
    '
    ;
  48. }
  49. elseif(isset($koniec)&&($koniec=='koniec'))
  50. {
  51. if(!lacz_bd()) echo &#092;"Nie mozna polaczyc sie z baza danych MySQL:\".mysql_error;
  52. $display = mysql_query(&#092;"SELECT * FROM $pytania ORDER BY id\");
  53. $score = 0;
  54. $total = mysql_num_rows($display);
  55. $nr=0;
  56. while ($result = mysql_fetch_array($display)) 
  57. {
  58. $answer = $result[&#092;"answer\"];
  59. $q = $result[&#092;"q\"];
  60. if ($user_answer == $answer)
  61. {
  62. $score++; 
  63. }
  64. }
  65. echo &#092;"
    1. <p align=center><b>Oto twój wynik $score / $total</b></p>
    \";
  66. echo &#092;"
    1. <p>
    \";
  67. if ($score == $total) 
  68. {
  69. echo &#092;"Moje gratulacje! Wszyzdkie odpowiedzi s&plusmn; poprawne!\";
  70. }
  71. elseif ($score/$total < 0.34) 
  72. {
  73. echo &#092;"Niestety. Niejet to dobry wynik, ale nieprzejmuj sie możesz spróbować jeszc
    z
  74.  raz\";
  75. }
  76. elseif ($score/$total > 0.67) 
  77. {
  78. echo \"Dobra robota! Całkiem nuiezły wynik.\";
  79. }
  80. else 
  81. {
  82. echo \"Bardzo słabo - sprobuj jeszcze raz!\";
  83. }
  84. echo \"[HTML]</p>[/HTML]\";
  85. echo \"[HTML]<p>Oto twoje odpowiedzi:\";
  86. echo \"[HTML]<table border=class='tabela'>[/HTML]\";
  87.  
  88. echo\"[HTML]<tr><td><>ID:</td><td>PYTANIE:</td><td>POPRAWNA ODPOWIEDZ:</></td><td>TWOJE ODPOWIEDZI:</></td><td></>WYNIK:</td></tr>[/HTML]\";
  89.  
  90. $display =@mysql_query(\"SELECT * FROM $pytania ORDER BY id\");
  91.  
  92. while ($row = mysql_fetch_array($display))
  93. {
  94. $id=$row['id'];
  95. $question = $row[\"question\"];
  96. $answer = $row[\"answer\"];
  97. $q = $row[\"q\"];
  98. echo \"[HTML]<tr><td>$id<td><br>$question</td><td><font color='#4286f4'>$answer</font></td>[/HTML]\";
  99. if ($user_answer == $answer)
  100. {
  101. echo \"[HTML]<td><font color='red'>{$user_answer}</font></td><td><font color='green'>POPRAWNE</font></td></tr>[/HTML]\";
  102. }
  103. elseif ($user_answer == \"\")
  104. {
  105. echo \"[HTML]<td><font color='red'>Nie wybrales zadnej odpowiedzi</font></td><td><font color='red'>NIEPOPRAWNE</font></td></tr>\"[/HTML];
  106. }
  107. else
  108. {
  109. echo \"[HTML]<td><font color='red'>{$user_answer}</font></td><td><font color='red'>NIEPOPRAWNE</font></td></tr>[/HTML]\";
  110. }
  111. }
  112. echo \"[HTML]</table></p>[/HTML]\"
  113. }
  114. }
  115. }
  116.  
  117. ?>


Ten post edytował padalec 10.02.2005, 21:17:07
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 19.08.2025 - 15:43