Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Newbie spørgsmål

0 views
Skip to first unread message

P_A

unread,
Nov 23, 2009, 10:02:28 AM11/23/09
to
Jeg er lige begyndt at l�re PHP og det f�rste jeg ville lave var en lille
quiz med et sp�rgsm�l og 3 svar muligheder. Det vil s� sige at de 2 svar
muligheder er falske og man f�r en fejl hvis man svare forkert.
Mit sp�rgsm�l lyder om koderne er ok at bruge? Jeg t�nker p� om jeg har
grebet det rigtigt eller forkert an og om alle vil kunne bruge quizen - og
her t�nker jeg p� folk med skiftende IP adresser og brug af proxy server.
Her er koderne:
main.php
<?php
session_start();
?>
<p>Du har <?php echo $_SESSION['var1']; ?> fejl.</p>
(Et eller andet sp�rgsm�l)
<p><a href="page1_1.php">Svar1</a></p>
<p><a href="page1_2.php">Svar2</a></p>
<p><a href="page1_3.php">Svar3</a></p>

page1_1.php
<?php
session_start();
$_SESSION['var1'] = $_SESSION['var1'] + 1;
?>
<p>Du har <?php echo $_SESSION['var1']; ?> fejl.</p>
<p>Forkert!</p>
<p><a href="main.php">Tilbage</a></p>

page1_2.php
<?php
session_start();
?>
<p>Du har <?php echo $_SESSION['var1']; ?> fejl.</p>

<p>Korrekt!</p>
(nyt sp�rgsm�l)
<p><a href="page2_1.php">Svar1</a></p>
<p><a href="page2_2.php">Svar2</a></p>
<p><a href="page2_3.php">Svar3</a></p>

page1_3.php
<?php
session_start();
$_SESSION['var1'] = $_SESSION['var1'] + 1;
?>
<p>Du har <?php echo $_SESSION['var1']; ?> fejl.</p>
<p>Forkert!</p>
<p><a href="main.php">Tilbage</a></p>

--
PA

Bertel Lund Hansen

unread,
Nov 23, 2009, 10:24:49 AM11/23/09
to
P_A skrev:

> Jeg er lige begyndt at l�re PHP og det f�rste jeg ville lave var en lille
> quiz med et sp�rgsm�l og 3 svar muligheder. Det vil s� sige at de 2 svar
> muligheder er falske og man f�r en fejl hvis man svare forkert.
> Mit sp�rgsm�l lyder om koderne er ok at bruge? Jeg t�nker p� om jeg har
> grebet det rigtigt eller forkert an og om alle vil kunne bruge quizen - og
> her t�nker jeg p� folk med skiftende IP adresser og brug af proxy server.
> Her er koderne:

Du husker vel at pakke hver fil ind i det rigtige HTML-skelet?
Men det ser rigtigt ud. I dit sted ville jeg blot forenkle det
ved kun at lave to svarsider, en for rigtigt svar, og en for
forkert. De to fejlfiler du har, er jo ens.

Det ville b�de forenkle og komplicere sagen hvis du kun lader
main.php stille sp�rgsm�l og s� kalder den igen fra filen med
"rigtig". Det kan klares med en sessionsvarabel der t�lles op.

--
Bertel
http://bertel.lundhansen.dk/ FIDUSO: http://fiduso.dk/

P_A

unread,
Nov 23, 2009, 11:13:03 AM11/23/09
to
"Bertel Lund Hansen" <splittemi...@lundhansen.dk> skrev i meddelelsen
news:51alg55df92kufdne...@news.stofanet.dk...

> Du husker vel at pakke hver fil ind i det rigtige HTML-skelet?

Jo HTML tags kommer. PHP'en skulle lige v�re p� plads f�r jeg begynder p�
design.

> Det ville b�de forenkle og komplicere sagen hvis du kun lader
> main.php stille sp�rgsm�l og s� kalder den igen fra filen med
> "rigtig". Det kan klares med en sessionsvarabel der t�lles op.

Du mener ligge sp�rgsm�lene ind i variabler?
S� er det vel "If " og "Then" jeg skal til at kigge p� efter lige at have
kigget lidt i "PHP-bogen"?

Tak for svaret.
--
PA

Bertel Lund Hansen

unread,
Nov 23, 2009, 1:22:48 PM11/23/09
to
P_A skrev:

> > Det ville b�de forenkle og komplicere sagen hvis du kun lader
> > main.php stille sp�rgsm�l og s� kalder den igen fra filen med
> > "rigtig". Det kan klares med en sessionsvarabel der t�lles op.

> Du mener ligge sp�rgsm�lene ind i variabler?

F.eks.

> S� er det vel "If " og "Then" jeg skal til at kigge p� efter lige at have
> kigget lidt i "PHP-bogen"?

Ja, det kan sagtens klare problemet.

Til visse if-then-grupper findes der en anden og mere overskuelig
opstilling som i PHP hedder en switch-case-konstruktion. Den er
ike sv�r at forst� og bruge, men *husk* at hver case skal
afsluttes med break;. Her er et skema:

switch ($_SESSION['opgave']) {
case 1: echo "Hvad er 2+2?"; break;
case 2: echo "Hvad er 4+4?"; break;
case 3: echo "Hvad er 6+6?"; break;
default: echo "Nu kan jeg ikke hitte p� mere!"; break;
}

Der er andre m�der at lave det p�. Hvis du synes det bliver for
meget p� �n gang, s� blot hold dig til if-then. Det er den
vigtigste konstruktion at f� l�rt.

0 new messages