[ 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ý: 29.12.20
Príspevky: 1516
Témy: 3 | 3
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ý: 29.12.20
Príspevky: 1516
Témy: 3 | 3
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 Operačné systémy Microsoft

4

712

19.01.2009 15:32

crawn

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

System

v PHP, ASP

0

816

18.11.2007 12:48

DADDY

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

Afliate system

v Redakčné systémy

1

454

16.07.2007 22:38

bruno.b

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

Klientsky system

v Redakčné systémy

2

562

19.05.2009 9:46

kajbo

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie.

redakčný systém?

v Redakčné systémy

20

711

11.10.2013 16:31

Ďuri

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

spomalený systém

v Operačné systémy Microsoft

24

1408

17.09.2008 23:27

dedko45

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

Bazár systém

v HTML, XHTML, XML, CSS

2

459

04.09.2015 21:15

patriksadsky

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

Redakcny system

v Redakčné systémy

2

729

13.01.2007 8:01

Toxic

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

Audio systém

v Ostatné

7

470

12.12.2017 22:14

Andre

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

New system??

v nVidia čipové sady

29

1707

15.04.2009 22:24

StrikeGUNxXx

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

Zabezpečovací systém

v Ostatné

7

354

10.04.2012 21:06

michalesku

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

System info

v Operačné systémy Unix a Linux

12

994

27.09.2007 15:58

dodo_mt

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

Operačný systém

v Ostatné

4

592

22.07.2011 22:02

thrax12

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

Php systém

v Redakčné systémy

1

668

03.02.2011 19:35

Bajzik

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

Kamerový systém

v Ostatné

3

671

03.01.2019 12:49

Maciak

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

Ligovy system

v Redakčné systémy

3

1498

18.01.2009 19:42

K0d1



© 2005 - 2024 PCforum, edited by JanoF