[ 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

873

19.01.2009 15:32

crawn

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

System

v Backend

0

988

18.11.2007 12:48

DADDY

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

Redakcny system

v CMS

2

726

06.08.2007 22:14

Deiky

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

Kamerový systém

v Ostatné

3

825

03.01.2019 12:49

Maciak

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

system restore

v Windows

0

508

03.07.2008 18:39

mike.p

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

Systém šablón

v Backend

11

591

02.10.2014 8:54

majky358

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

padá systém

v Windows

1

551

17.01.2011 16:41

niXo

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

Nestabilny system

v Pamäte

8

889

17.10.2008 17:51

GICaesar

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

suborovy system

v Siete

1

601

23.02.2008 16:07

Devil_SK

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

ICQ system ?

v Sieťové programy

21

1362

04.07.2008 23:49

KingTommy

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

Redakčný systém

v CMS

5

964

13.06.2007 23:02

majdo

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

Zablokovaný systém

v Windows

4

728

11.07.2006 19:47

WLXok

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

system realitiek

v Obchody, reklamácie a právo

5

592

27.06.2012 21:54

david3504

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

Aky system ?

v Unix-like systémy

7

877

02.02.2007 23:58

cr3at0r

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

spomalený systém

v Windows

24

1551

17.09.2008 23:27

dedko45

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

Afliate system

v CMS

1

579

16.07.2007 22:38

bruno.b



© 2005 - 2026 PCforum, edited by JanoF