Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem ze quizem - sprawdzanie wyników :(
Forum PHP.pl > Forum > Gotowe rozwiązania
xPatryk
Witam smile.gif

mam problem z skrytem quizu...

otóż mam pytania w bazie mysql i wyswietlaja sie one prawidlowo


[php:1:648e021ce2]<?php



require_once("mainfile.php");
$module_name = basename(dirname(__FILE__));

include("header.php");
title("QńQuizer");





function przepytaj()
{

$sql = "SELECT * FROM quiz ORDER BY RAND() LIMIT 10 ";
$nrpytania = "1";
$odp = mysql_query($sql);
$ilosc_pytan = mysql_num_rows($odp);
echo "<form name="quiz" action="modules.php?name=quiz&akcja=sprawdz" method="POST"> ";
while($wynik = mysql_fetch_array($odp)){



$nr = ( $wynik['id'] );
$id = ( $wynik['id'] );
$pytanie = ( $wynik['pytanie'] );
$odpowiedza = ( $wynik['a'] );
$odpowiedzb = ( $wynik['b'] );
$odpowiedzc = ( $wynik['c'] );
$odpowiedzd = ( $wynik['d'] );
$obrazek = ( $wynik['obrazek'] );
$punkty = ( $wynik['punkty'] );


if (@fclose(@fopen("images/quiz/$obrazek", "r"))) {
$obrazek= " <img src = " images/quiz/$obrazek "> ";

} else {
$obrazek = "";
}

$pytanie = "

<input value="$nr" name="pytanie$nr">
<tr>
<td width="75%" height="15" align="right"><b>Pytanie za $punkty pkt.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</b></td>
<td width="25%" height="15"></td>
</tr>
<tr>
<td width="100%" height="20" colspan="2"><b>[$nrpytania / $ilosc_pytan] $pytanie</b></td>
</tr>
<tr>
<td width="75%" height="20">&nbsp;</td>
<td width="25%" height="140" rowspan="7">$obrazek</td>
</tr>
<tr>
<td width="75%" height="20">
<input type="radio" value="a" name="pyt$nr"><i>$odpowiedza</i></td>
</tr>
<tr>
<td width="75%" height="20">
<input type="radio" value="b" name="pyt$nr"><i>$odpowiedzb</i></td>
</tr>
<tr>
<td width="75%" height="20">
<input type="radio" value="c" name="pyt$nr"><i>$odpowiedzc</i></td>
</tr>
<tr>
<td width="75%" height="20">
<input type="radio" value="d" name="pyt$nr"><i>$odpowiedzd</i></td>

";



OpenTable();
echo "$pytanie";
CloseTable();

$nrpytania = $nrpytania+1;

}
echo "<br><input value="TAK" name="wyslac"><br><center><input type="submit" value="Skończyłem !"></form></center>";
}


if ($wyslac == "TAK" ){

$sql = "SELECT id, prawidlowa, punkty FROM quiz ";
$odp = mysql_query($sql);
$ilosc = mysql_num_rows($odp);
while($wynik = mysql_fetch_array($odp)){



$id = ( $wynik['id'] );
$punkty = ( $wynik['punkty'] );
$prawidlowa = ( $wynik['prawidlowa'] );



echo "$pyt$id";
if ($pytanie == $prawidlowa)
{echo "OK"; }
else {echo ":{<br>";}
}

}

else { przepytaj();}

include("footer.php");


?>[/php:1:648e021ce2]

, ale kiedy chcę sprawdzić wyniki, nie działa sad.gif
najprawdopodobniej coś robię źle sad.gif

chodziło mi o to, aby każde pytanie z 10 wyświetlonych losowo miało przy polu typu checkbox nazwe pyt$nr, co w rezultacie odpowiadalo by np pyt12...

Potem chciałem po wysłaniu sprawdzić odpowiedzi stosując warunek if ($pyt$id == $prawidlowa), ale to juz nie dziala i nie wiem dlaczego...


Pozdrawiam i proszę o pomoc !

xPatryk


ps. do adminów: nie wiedziałem, czy pisać to w dziale bazy danych, gdyż to chyba raczej problem tkwi gdzie indziej, wiec prosze nie kasowac tego posta ...
maggot
linia 91:

[php:1:6e15eb4dbd]<?php
if ($_POST['wyslac'] == "TAK" ){
?>[/php:1:6e15eb4dbd]
i podobnie dla innych zmiennych pochodzacych z formularza.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.