quiz 1x maken

Status
Niet open voor verdere reacties.

patje8

Gebruiker
Lid geworden
31 jul 2005
Berichten
436
Heb een quiz gemaakt maar er zijn een melding moeten komen als de gebruikersnaam en de vragen_id overeenkomen en dit lukt me niet.

PHP:
<?
session_start();

require("config.php");
include("htmltop.php");

if(!$login){
?>

Niet ingelogd<br><br>
> <a href="login.php">Log in</a><br>
> <a href="aanmelden.php">Meld aan</a>

<?
}
if($login AND session_is_registered('memberid')){
$query = mysql_query("SELECT * FROM members WHERE memberid = '$memberid'");

while($object = mysql_fetch_object($query)){
$gebruikersnaam = $object->gebruikersnaam;
$priveberichten = $object->pm;
}

$query = mysql_query("SELECT * FROM priveberichten WHERE naar = '$memberid'");
$result = mysql_num_rows($query);
?>

Ingelogd als : <? echo $gebruikersnaam ?><br><br>

<IMG src="../images/bullet.gif" width="10" height="15"> 
&nbsp;&nbsp;<a href="profiel.php">Ledenlijst</A> &nbsp;&nbsp;<IMG src="../images/bullet.gif" width="10" height="15">
&nbsp;&nbsp;<a href="profiel.php?mid=<? echo $memberid ?>">Mijn profiel</A> &nbsp;&nbsp;<IMG src="../images/bullet.gif" width="10" height="15">
&nbsp;&nbsp;<a href="wijzig.php">Wijzig gegevens</A> &nbsp;&nbsp;<IMG src="../images/bullet.gif" width="10" height="15">
&nbsp;&nbsp;<a href="download.php">Download</A> &nbsp;&nbsp;<IMG src="../images/bullet.gif" width="10" height="15">
&nbsp;&nbsp;<a href="verjaardagen.php">Verjaardagen</A> &nbsp;&nbsp;<IMG src="../images/bullet.gif" width="10" height="15">
&nbsp;&nbsp;<a href="quiz.php">Kwis</A> &nbsp;&nbsp;<IMG src="../images/bullet.gif" width="10" height="15">
<?
if($priveberichten){
?>
&nbsp;&nbsp;<a href="priveberichten.php">Privé- berichten</A> ( <? echo $result ?> ) &nbsp;&nbsp;<IMG src="../images/bullet.gif" width="10" height="15">
&nbsp;&nbsp;<a href="loguit.php">Uitloggen</A> &nbsp;&nbsp;<IMG src="../images/bullet.gif" width="10" height="15"><br>
<br>
<?php 
// Als er (nog) niet op submit gedrukt is... 
if (!IsSet($_POST['submit']))
$query = mysql_query("SELECT * FROM top10 WHERE gebruikersnaam = '$gebruikersnaam' AND vragen_id = '1'");
echo "Je hebt deze quiz reeds gemaakt";
else
{ // geven we de quiz weer: 
?> 
<form action="<? echo $PHP_SELF ?>" method="post"> 
<? $naam= $gebruikersnaam ?><br><br>
<br> 
<? 
$i=1; 
$result = mysql_query("SELECT * FROM vragen ORDER BY id ASC LIMIT 0,10") or die (mysql_error()); 
$aantal = mysql_num_rows($result); 

    while ($row = mysql_fetch_array($result)) 
    { 
// vraag en antwoord 1 + 2 
    echo $i . ")$row[Vraag]<br> 
    <input type='radio' name='q$i' value='A'>$row[Antwoord1]<br> 
    <input type='radio' name='q$i' value='B'>$row[Antwoord2]<br>"; 
// is er een antwoord 3 laat hem dan zien 
    if (!empty($row['Antwoord3'])){ 
        echo "<input type='radio' name='q$i' value='C'>$row[Antwoord3]<br>"; 
//is er een antwoord 4 laat hem dan zien 
        if (!empty($row['Antwoord4'])){ 
            echo"<input type='radio' name='q$i' value='D'>$row[Antwoord4]<br>"; 
            }; 
            echo "<br>"; 
        }; 
$i++; 
    }; 

?> 
<input type='submit' name='submit' value='Controleer antwoorden'> 
</form> 
<?
}
}
else 
{ 
    $score = 0; 
    // anders; als er wel op submit gedrukt is, controleren we of de antwoorden goed zijn. 
    $i=1; 
$result = mysql_query("SELECT * FROM vragen ORDER BY ID ASC LIMIT 0,10") or die (mysql_error()); 
$aantal = mysql_num_rows($result); 
while ($row = mysql_fetch_array($result)) 
    { 

    if ($_POST['q'.$i] = $row['Juist'])  // hier staat dus: Als het antwoord op vraag 1 (q1) = a1 dan... 
    { 
        $score = $score + 10; // dan komen er 10 punten bij de huidige aantal punten. 
        // nu geven we ook nog even weer dat die persoon de vraag goed had! 
        echo "Je had vraag $i goed!"; 
    } 
    else // als het antwoord op vraag 1 dus niet a1 (en dus fout was): 
    { 
        // krijg je er geen punten bij en word er weergegeven dat je vraag 1 fout had. 
        echo "Helaas, je had vraag $i fout!"; 
    } 
    echo "<br>"; 
    $i++; 
};
    // We zijn klaar met het nakijken van de antwoorden. 
     
        // er is dus wel een naam ingevuld... 
        // Dan gaan we nu die gegevens in de mySQL tabel zetten... 
$score = $score / ($i-1);
        mysql_query("INSERT INTO top10 (gebruikersnaam,vragen_id,score) 
                               VALUES ('$gebruikersnaam','1','$score')") 
                or die(mysql_error()); 

        // De gegevens zijn toegevoegd en dat geven we even weer: 
        echo "<br />\n Bedankt ".$gebruikersnaam.", voor het maken van de quiz.<br />\nAls je veel goede antwoorden had heb je grote kans dat je in de <a href='top10.php'>top 10</a> staat."; 
    } 
	}
include("htmlbottom.php");
?>
 
Net als bij je vraag over het uitloggen...

Je vraagt allerlei variabelen die nog niet gedeclareert zijn (Tenminste niet uit dit stuk op te maken)

Onder andere $login en $memberid
 
Waar moet ik in de code jou poging weervinden dan?

Ik kan nergens een query of iets dergelijks vinden dat probeert te zoeken naar een overeenkomst tussen gebruikersnaam en het vragen id....

en is het met "uitloggen" gelukt? Een berichtje zou wel handig zijn...
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan