[ 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 Windows

4

874

19.01.2009 15:32

crawn

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

System

v Backend

0

989

18.11.2007 12:48

DADDY

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

Download system

v Ostatné

3

611

02.12.2010 19:28

Flety

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

Kamerový systém

v Ostatné

3

826

03.01.2019 12:49

Maciak

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

Chladiaci system

v Notebooky a netbooky

3

496

20.11.2012 16:53

stanospeed

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

Operačný systém

v Ostatné

3

800

30.12.2008 12:18

T44

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

redakcny system

v CMS

7

1043

06.05.2009 21:25

Momosk

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

Systém súborov

v Pevné disky a radiče

6

1217

30.11.2005 17:24

Whistler

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

Spomalený systém

v Windows

1

292

06.02.2013 9:38

mirom

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

operacny system

v Ostatné

3

490

09.04.2012 16:26

jtbs

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

system alert

v Antivírusy a ochrana

3

1154

18.12.2006 19:29

palinodsl

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

nestabilny system

v Ostatné

2

590

23.12.2008 21:10

Roberbo

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

nenabehne system

v Windows

6

567

17.03.2010 0:29

4040

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

INZERTNÝ SYSTÉM

v Ostatné

0

1166

05.04.2007 11:20

gaštan

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

Coj2-system

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Hry a herné konzoly

34

1087

23.01.2011 19:29

shaggy

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

Journal system

v Backend

7

548

02.12.2009 14:26

anton



© 2005 - 2026 PCforum, edited by JanoF