Test online - afisare aleator

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
MarPlo
Administratorul site-ului
Mesaje: 4343

Test online - afisare aleator

M-am uitat putin pe fisier, e cam mult cod, multe interogari SQL, si ar dura mult sa caut sa inteleg logica si despre ce e vorba.
Cel mai bine tu cunosti ce face. Incearca sa faci verificari (debug) cu var_dump() unde e nevoie, sa vezi ce valori primeste, transmite ... si tot asa iti poti da seama unde ar putea fi problema, unde trebuie modificat sa faca ce vrei

iuly Mesaje: 11
toate interogarile functioneaza bine si codul html .... pur si simplu nu stiu cum sa pun acolo conditia ca atunci cand bifez raspunsul corect sa imi incrementeze o variabila ceva :-??

MarPlo Mesaje: 4343
De exemplu, ai o coloana in tabel cu nr. de raspunsuri corecte, "nr_c", de tip INT.
Cand e primit raspunsul, daca e corect, incrementezi acel nr din "nr_c", care apartine raspunsului (dupa un id), cu o unitate.
Cam asa:
$sql = "UPDATE `nume_tabel` SET `nr_c`=`nr_c`+1 WHERE `id`='$id' LIMIT 1";

iuly Mesaje: 11
nu inteleg ce vrei sa zici , eu vreua sa fac sa-mi afiseze nota dupa test.. de exemplu am nota=1 si dupa ce bifeaza toate intrebarile si sunt corecte nota =10
atat nu ma complic pt fiecare utilizator si asa mai departe (momentan)

MarPlo Mesaje: 4343
Intelesesem altceva.
Daca nu vrei ca nota sa fie inregistrata pe server, ci sa arate utilizatorului nota totala dupa terminarea testului respectiv, s-ar putea face cu JavaScript. Dar daca nu stii JS, iti va parea complicat.
Ideea e ca sa incluzi in pagina un JavaScript care are intr-un array numele campurilor cu raspunsul corect, iar la apasarea unui buton scriptul sa verifice fiecare din acel camp daca a fost completat si daca da, incrementeaza o variabila cu 1 pt. fiecare si returneaza valoarea acelei variabile.

Ar merge similar si cu php. Intai adaugi intr-o sesiune un array cu raspunsurile corecte si la apasarea unui buton se deschide un script php care verifica daca rezultatele pastrate in sesiune (cate din ele) au fost completate si in functie de numarul celor gasite returneaza nota.

Cam asta ar fi logica, restul..., trebuie implementata.

iuly Mesaje: 11
Am inteles logica insa fiecare intrebare si fiecare raspuns la randul lui este intr-un for , cum as putea verifica campul bifat daca este cel corect si sa il verific la randul sau cu niste date dintr-un vector care si acela trebuie "umplut" cu raspunsurile corecte ? :o

MarPlo Mesaje: 4343
Poti pastra numele campurilor cu raspunsurile corecte intr-un array pe care dupa terminarea buclei il incluzi in sesiune si apoi verifici acea sesiune cand utilizatorul apasa un buton, trimiti la scriptul care verifica sesiunea acel formularul cu casetele completate.
In sesiune adaugi cam asa:, in bucla for unde faci codul pt. campuri, cand ajunge sa creeze campul cu raspunsul corect setezi un array $ar_ses[]='nume_camp_corect'; si dupa terminarea buclei for adaugi in sesiune $_SESSION['corecte']=$ar_ses;

P.S Scuze, altfel nu srtiu sa explic, daca nu se intelege sau codul facut de tine e intr-un fel ce face mai complicata treaba asta, incearca sa creezi propria logica la ce vrei sa faci.

iuly Mesaje: 11
mersi frumos pentru tot efortul depus si pentru emailul trimis :)

Subiecte similare