Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Koe PHP:llä

DjAS [26.05.2006 14:44:57]

#

Hei!

Tarvitsisin erästä lupakirjasysteemiä varten kokeen.

Koepohja varmasti onnistuisi ihan normaalilla lomakeskriptillä, mutta lisäksi tarvittaisiin joku järjestelmä, mikä tarkastaisi kokeen vastaukset, ja mikäli tietty prosentti vastauksista on oikein, se lähettää vastaukset postiin.

Mikäli tietty prosentti vastauksista taas ei olisi oikein, se ei lähetä tietoja, ja tulee esimerkiksi jokin esto, kunnes voi taas yrittää kokeen tekemistä.

Onko täysin mahdotonta?

ajv [26.05.2006 14:53:27]

#

Mikään ei ole mahdotonta ja tuo on jopa helppoa, jos kyseessä vain on monivalintatehtävistä koostuva koe. Heti jos annat käyttäjälle mahdollisuuden kirjoittaa jonkun vastauksen, joudut panostamaan huomattavasti enemmän syötteiden tarkistukseen ja mikäli sinulla on siinä kysymys "Kuinka toinen maailmansota vaikutti Suomen teolliseen kehittymiseen", niin ei enää riitä ihan tuo syötteiden tarkistuskaan vaan saat koodata sinne myös jonkun tekoälyn :)

Mutta siis antamillasi tiedoilla ei voi vastata enempää. Onko sulla ongelma jossain tietyssä kohtaa?

DjAS [26.05.2006 15:15:07]

#

Tarkoitus olisi, että eteesi tulee liuta kysymyksiä, ja jokaisen kysymyksen alle esimerkiksi 4 ruutua, mihin yhteen laitetaan rasti. Lopuksi kun kaikkiin on vastattu, niin vastaukset voi lähettää.

Lebe80 [26.05.2006 15:52:30]

#

html:

<form action="tarkistus.php" method="post">
<div><h2>Kysymys 1</h2>
<p>Mikä seuraavista....</p>
<input name="kysymys_1" type="radio" value="1" />Vaihtoehto1<br />
<input name="kysymys_1" type="radio" value="2" />Vaihtoehto2<br />
<input name="kysymys_1" type="radio" value="3" />Vaihtoehto3<br />
<input name="kysymys_1" type="radio" value="4" />Vaihtoehto4<br />
</div>
<div><h2>Kysymys 2</h2>
<p>Mikä seuraavista....</p>
<input name="kysymys_2" type="radio" value="1" />Vaihtoehto1<br />
<input name="kysymys_2" type="radio" value="2" />Vaihtoehto2<br />
<input name="kysymys_2" type="radio" value="3" />Vaihtoehto3<br />
<input name="kysymys_2" type="radio" value="4" />Vaihtoehto4<br />
</div>
...
<br />
<input name="tarkistus" type="submit" />
</form>

Tämän jälkeen tarkistus.php -tiedostossa käsittelet esim. vastaajan tunnuksen/nimen/yms. perusteella kuka kokeen teki ja onko hän jo yrittänyt vastata kokeeseen.

Sen jälkeen käyt läpi jokaisen vaihtoehdon yms. tarkistaen että kaikkiin kysymyksiin on vastattu ja tarkistat samalla oikeat/väärät vastaukset.

DjAS [26.05.2006 19:26:59]

#

Okei, kiitos, alkaa näyttää jo hyvältä. Mutta, tarvitsen vielä vähän lisätietoa.

Mitä tuohon tarkista.php:n sisälle tulisi siis laittaa? Vai logittaako tuo kysely vastaukset tuonne tarkista.php:lle, josta ne voi sitten tarkistaa?

Jos voisit antaa hieman esimerkkiä jotta saisin systeemin toimimaan... :)

porzi [26.05.2006 20:20:37]

#

tarkistat tuon painetun nappulan siellä tarkista.php:ssä

if ($_POST["kysymys_1"]=="2") {
echo "Oikein!";
}
else {
echo "Väärin :(";
}

En ole testannut, mutta noin sen pitäisi mielestäni toimia. Siis tämä toimii, jos oikea vastaus on 2.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta