Quiz Problem
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ansicht
antwort
anzeigen
auftreten
beitrag
ebenfall
erste
falsch nchste frage
fehler
formular
fragen
klammern
kleines quiz
pech
positiv
prinzip
programmiersprache
quiz
session
skript
-
Hey Leude.. Ich habe ein Problem und ich hoffe ihr könnt mir dabei helfen.
Ich möchte ein kleines Quiz programmieren in PHP.
Hier schonmal der Quellcode:
$zahl = rand(1,10);
if ($zahl == 1)
{
print "Frage 3";
}
if ($zahl == 2)
{
print "Frage 2";
}
if ($zahl == 3)
{
print "Frage 3";
}
if ($zahl == 4)
{
print "Frage 4";
}
if ($zahl == 5)
{
print "Frage 5";
}
if ($zahl == 6)
{
print "Frage 6";
}
if ($zahl == 7)
{
print "Frage 7";
}
if ($zahl == 8)
{
print "Frage 8";
}
if ($zahl == 9)
{
print "Frage 9";
}
if ($zahl == 10)
{
print "Frage 10";
}
// bis hierhin funktioniert alles einwandfrei :P
if ($ok)
{
if ($eg == "Antwort 1" && $zahl == 1)
{
print "Wow! Richtig!";
}
if ($eg == "Antwort 2" && $zahl == 2)
{
print "Wow! Richtig!";
}
if ($eg == "Antwort 3" && $zahl == 3)
{
print "Wow! Richtig!";
}
if ($eg == "Antwort 4" && $zahl == 4)
{
print "Wow! Richtig!";
}
if ($eg == "Antwort 5" && $zahl == 5)
{
print "Wow! Richtig!";
}
if ($eg == "Antwort 6" && $zahl == 6)
{
print "Wow! Richtig!";
}
if ($eg == "Antwort 7" && $zahl == 7)
{
print "Wow! Richtig!";
}
if ($eg == "Antwort 8" && $zahl == 8)
{
print "Wow! Richtig!";
}
if ($eg == "Antwort 9 && $zahl == 9)
{
print "Wow! Richtig!";
}
if ($eg == "Antwort 10" && $zahl == 10)
{
print "Wow! Richtig!";
}
else
{
print "<br> Pech gehabt. Leider falsch!";
}
}
Leider kommt wenn ich die RICHTIGE Antwort eingebe, ebenfalls Pech gehabt.
Also ein Problem ist mir schon bekannt: VARIABLENÜBERGABE
Hab das mit dieses Sessions probiert, bin aber nicht ganz nachgekommen.
Hier noch das Formular:
<form name="form1" method="post" action="">
<p>
<input name="eg" type="text" value="">
</p>
<p>
<input type="submit" name="ok" value="-----> OK <-----">
</p>
</form>
Ich hoffe ihr habt eine Idee (bitte nicht MySQL)!
Mfg X-Black :)
Edit:
Ach ja... Das soll so ablaufen:
Jemand kommt ins Quiz. Es wird eine Zufallszahl zwischen 1 und 10 generiert.
Auf jeder Zahl ist eine Frage.
Der User soll dann die Antwort schreiben und auf Ok drücken.
Danach:
Anzeige ob richtig oder falsch.
Nächste Frage... Ohne Fehlerstatistik nichts, es geht nur um das Skript prinzip. (Ausbauen kann ich später noch)
Beitrag geändert: 13.11.2006 20:24:25 von x-black -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
so als erstes... ähm wie wärs wennst das in ein Array schreibst um Quellcode zu sparen... bzw. mit einem switch () und sonst naja GLOBAL_VARS_OFF würd $_POST['eg'] verweden ... dann entweder das ist nur in dem Script falsch oder deine values gehen nie wieder zu...
ähm und miener ansicht nach liegt der fehler da:
du definierst $zahl und dann wirds ausgegeben du gibst die Frage ein ... und das formular wird reloaded und da wird $zahl auf 0 gesetzt... dh.: du musst $zahl auch mitgeben ich würds mit nem <input type="hidden" name="zahl" value="'.$zahl.'"> machen!
mfg
-
Der erste Teil kenn ich irgendwie aus andern Programmiersprachen (Switch, Case etc.) Möchte dies in meinem Skript aber lieber nicht benutzen. Interessant ist für mich der 2. Teil :D
Hehe Danke :D -
Warscheinlich liegt es daran :
if ($ok)
{ <--Diese Klammer musst du
if ($eg == 'Antwort 1' && $zahl == 1)
{
print 'Wow! Richtig!';
}
.
.
.
if ($eg == 'Antwort 10' && $zahl == 10)
{
print 'Wow! Richtig!';
}
<-- hier schließen und
else
{
print '<br> Pech gehabt. Leider falsch!';
}
} <-- nicht erst hier
-
Warscheinlich liegt es daran :
if ($ok)
{ <--Diese Klammer musst du
if ($eg == 'Antwort 1' && $zahl == 1)
{
print 'Wow! Richtig!';
}
.
.
.
if ($eg == 'Antwort 10' && $zahl == 10)
{
print 'Wow! Richtig!';
}
<-- hier schließen und
else
{
print '<br> Pech gehabt. Leider falsch!';
}
} <-- nicht erst hier
Lol, also das ist falsch... absolut...
weil dann kommt ein absoluter unsinn raus.
Überleg dir das nochmal außerdem ist es eh schon geklärt.
Wenn noch fragen auftreten wird er sich schon melden.
Zuerst durchlesen was dort steht wäre positiv -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage