/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Newbie spørgsmål
Fra : P_A


Dato : 23-11-09 16:02

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 (23-11-2009)
Kommentar
Fra : Bertel Lund Hansen


Dato : 23-11-09 16:25

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 (23-11-2009)
Kommentar
Fra : P_A


Dato : 23-11-09 17:13

"Bertel Lund Hansen" <splitteminebramsejl@lundhansen.dk> skrev i meddelelsen
news:51alg55df92kufdneb10ktgmktd7anv24i@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 (23-11-2009)
Kommentar
Fra : Bertel Lund Hansen


Dato : 23-11-09 19:23

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.

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

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste