[ Príspevkov: 4 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 01.08.11
Prihlásený: 13.08.11
Príspevky: 2
Témy: 1 | 1
NapísalOffline : 01.08.2011 19:27 | Quizový/testový systém

Dobrý deň,
bol by som veľmi rád ak by mi niekto pomohol s mojím problémom:
Chcem si vytvoriť quizový/testový systém .... z MySQL databázy sa vypíšu otázky na ktoré je potrebné odpovedať, potom ich server spracuje a výsledky zobrazí...
V DB mám vytvorené 4 tabuľky:
otazka - zadávam názov
1 - odpoveď č. 1
2 - odpoveď č. 2
spravna_odpoved - myslím že je jasné...

Výpis otázok z db mám riešený cez while:
Kód:
while($hodnota = mysql_fetch_assoc($spojenie))
{
echo "Znenie otázky";
echo $hodnota['otazka'];
echo "<form method='post' action='".$_SERVER[PHP_SELF]."'>";
echo "<select name='moja_odpoved'>";
echo "<option value '".$hodnota['1']."'>".$hodnota['1']."</option>";
echo "<option value '".$hodnota['2']."'>".$hodnota['2']."</option>";
echo "</select>";
}


Výsledky odošlem pomocou POST a potom ich spracujem nasledovne:
Kód:
if(isset($_POST['submit']))
{
$moja_odpoved = $_POST['moja_odpoved'];
$vysledok = mysql_fetch_assoc($spojenie);
$vysledok['spravna_odpoved']

if ($moja_odpoved == $vysledok['spravna_odpoved']) {
echo "Odpovedal si správne";
}
else {
echo "Odpovedal si nesprávne";
}

}


Problém mám v tom že neviem spracovať viac ako jednú otázku (keď sa v DB nachádza jedná otázka tak všetko funguje, keď ich je viac tak to kolabuje). Pomohlo by asi to kebyže sa priradí ku každej otázke id ktoré sa dostane cez POST a spracuje... len neviem ako to spraviť...
Vopred veľká vďaka...


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 12.12.17
Príspevky: 1433
Témy: 2 | 2
Bydlisko: Praha / Rev...
NapísalOffline : 01.08.2011 20:11 | Quizový/testový systém

Vytvor si do tabuľky stĺpec s menom napríklad id a nastav ho ako primárny index a AUTO_INCREMENT. Toto vytvorí pre každú otázku, ktorú tam vložíš, index, pod ktorým otázka bude vystupovať. Toto dáš potom do atribútu name každého selectu a môžeš veselo vyhodnocovať.

A nikde tam nevidím cyklus. To sa potom nediv, že ti to nejde pre viac otázok.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 01.08.11
Prihlásený: 13.08.11
Príspevky: 2
Témy: 1 | 1
Napísal autor témyOffline : 01.08.2011 21:46 | Quizový/testový systém

ok vďaka... v DB som vytvoril stĺpec ako si písal, len ako dať do atributu name každého selectu a potom ako to POSTnuť?


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 12.12.17
Príspevky: 1433
Témy: 2 | 2
Bydlisko: Praha / Rev...
NapísalOffline : 01.08.2011 22:36 | Quizový/testový systém

V prvom rade dám form pred cyklus, aby sa nevypisoval furt. (To som si až teraz všimol...)
Kód:
echo "<form method='post' action='".$_SERVER[PHP_SELF]."'>";
while($hodnota = mysql_fetch_assoc($spojenie))
{
echo "Znenie otázky";
echo $hodnota['otazka'];
echo "<select name=".$hodnota["id"].">";
echo "<option value '".$hodnota['1']."'>".$hodnota['1']."</option>";
echo "<option value '".$hodnota['2']."'>".$hodnota['2']."</option>";
echo "</select>";
}
echo "</form>"


No a potom prehľadám $_POST asi takto:
Kód:
foreach($_POST as $key => $value)
{
 $result = mysql_query("SELECT spravna_odpoved FROM tabulka WHERE id='$key'");
 $row = mysql_fetch_assoc($result);
 if($row["spravna_ocpoved"] == $value) echo "Spravna odpoved";
 else echo "Zla odpoved";
}


Snáď som to dobre napísal, nechce sa mi to skúšať...


 [ Príspevkov: 4 ] 


Quizový/testový systém



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

System

v PHP, ASP

0

531

18.11.2007 12:48

DADDY

V tomto fóre nie sú ďalšie neprečítané témy.

system

v Operačné systémy Microsoft

4

480

19.01.2009 15:32

crawn

V tomto fóre nie sú ďalšie neprečítané témy.

Redakcny system

v Ostatné

0

576

03.08.2007 18:38

desann

V tomto fóre nie sú ďalšie neprečítané témy.

operacny system

v Notebooky a netbooky

10

620

27.10.2008 18:19

I_hate_Vista

V tomto fóre nie sú ďalšie neprečítané témy.

system modulov

v PHP, ASP

1

306

26.06.2008 19:31

p360t

V tomto fóre nie sú ďalšie neprečítané témy.

Bazár systém

v HTML, XHTML, XML, CSS

2

183

04.09.2015 21:15

patriksadsky

V tomto fóre nie sú ďalšie neprečítané témy.

Nestabilny system

v Operačné systémy Microsoft

2

206

30.10.2007 13:01

Zemla

V tomto fóre nie sú ďalšie neprečítané témy.

Redakčny system

v Redakčné systémy

14

230

02.05.2013 20:00

Mego

V tomto fóre nie sú ďalšie neprečítané témy.

REDAKCNY SYSTEM

v Redakčné systémy

6

451

25.07.2007 15:51

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

system realitiek

v Obchody, reklamácie a právo

5

288

27.06.2012 21:54

david3504

V tomto fóre nie sú ďalšie neprečítané témy.

redakcny system

v Redakčné systémy

6

500

20.10.2007 10:05

mokus

V tomto fóre nie sú ďalšie neprečítané témy.

Redakčný systém

v Redakčné systémy

5

573

13.06.2007 23:02

majdo

V tomto fóre nie sú ďalšie neprečítané témy.

FTP system

v Ostatné operačné systémy

5

210

15.08.2013 19:33

Krakish

V tomto fóre nie sú ďalšie neprečítané témy.

Zablokovaný systém

v Operačné systémy Microsoft

4

290

11.07.2006 19:47

WLXok

V tomto fóre nie sú ďalšie neprečítané témy.

Klientsky system

v Redakčné systémy

2

434

19.05.2009 9:46

kajbo

V tomto fóre nie sú ďalšie neprečítané témy.

Aky system ?

v Operačné systémy Unix a Linux

7

555

02.02.2007 23:58

cr3at0r



© 2005 - 2017 PCforum, edited by JanoF