«« ( Date ) »» // «« ( Thread ) »» // nastava - 2003

Re: php - pomoc

by Aleksandar Milosevic
nedelja, 25. maj 2003 - 12:10.

> ovde mislim da ce biti problem i preneti na sledecu stranu promenljiv
> broj podataka preko forme !

Nisam neki ekspert za PHP, tacnije nisam ga odavno koristio ali mozda ti ovo
pomogne.

<form action="proveri-odgovore.php">

<!-- sifra testa radi uporedjivanja -->
<input type="hidden"
name=sifra_testa"
value="ovde-postavi-sifru-testa"/>


<input type="hidden"
name="broj_pitanja"
value="ovde-postavi-broj-pitanja"/>

<!-- ovaj deo generises u zavisnosti od broja pitanja -->
<input ...
name="pitanje_1" .../>

<input ...
name="pitanje_2" .../>


<!-- dugme za submit -->
<input type="submit"/>

</form>


Sada skripta proveri-odgovore.php. Koliko de secam postoji globlana
promenljiva nesto kao HTTP_VARS ili slicno u kojoj se nalaze sve promenljive
koje si postavio u formi. Mislim da je tip ove promenljive dictionary ili
kako se vec zove u PHP-u. Pomocu nje mozes da dodjes do svih submitovanih
vrednosti.

Pristup tim promenljivama je oblika HTTP_VARS['pitanje_1']. Sada stavi to u
jednu for petlju i izvuces odgovore nezavisno od njihovog broja. Mislim da
ti je potrebna i promenljiva 'broj_pitanja' u slucaju da ti neko pitanja
ostane neoznaceno. U tom slucaju se odgovor na to pitanje nece javiti u
HTTP_VARS.

Mislim da postoji funkcija testphp() ili nesto slicno ( pogledaj
dokumentaciju na www.php.net ). Za pocetak stavi nju u proveri-ogovore.php i
probaj formu.

Ovo nije najbolje resenje. Pogledaj php dokumentaciju i procitaj malo o
session-ima u php-u. Prvo proveri da li mozes da ih koristis na web-serveru.
Bilo bi bolje da sifru testa ne saljes klijentu uopste i da ona ostane na
serveru. Da li smes da modifikujes bazu? Mozda da tamo cuvas informaciju o
tome koji je test kom kandidatu dodeljen.

Ima dosta stvari na koje treba da obratis paznju kada radis ovako nesto.
Dosta zavisi od toga kakva je baza i koja su pravila koja se primenjuju pri
polaganju testa.


> takodje treba da ispisujem pri polaganju testova preostalo vreme ,
> ja sam probao preko nekih while petlji ali nije bas radilo
> ima li neko ideju?
>

Ovo moras da uradis na klijentu tako da si primoran da koristis JavaScript.