De ce programarea?    Sa progresez continuu...

Meditatii la colegiu... (ciobanu.cich.md review)

Meditatii la colegiu... (ciobanu.cich.md review)

De ce scriu rar articole?
- Nu stiu ce sa va prezint, am o criza de idei probabil de aceea azi v-a fi un mic review a site-ului didactic domnului Andrei Ciobanu.

Ma voi stradui sa spun doar lucruri obiective si sper ca acest post sa nu imi influienteze studiile in colegiu. Domnul Andrei e profesor de Programare Web, din cite cunosc caci deabia sunt cursul 2 si nu am avut posibilitate sa asist la o lectie a dumnealui, insa am auzit multe opinii bune a baietilor de cursul final. Unicul lucru care l-am auzit si nu mi-a provocat satisfactie e faptul ca la perechi se lucreaza cu Dreamweaver incit cred ca nu e cea mai buna solutie in programarea/machetarea web (argumentele le gasiti pe google, sunt destul de multe). In cele din urma m-am decis sa fac un review a site-ului caci pentru a caracteriza maestrul trebuie sa ii cunosti lucrarea.

Designul mi-a placut, e simplu si uzabil. Despre design nu v-oi vorbi deoarece am gasit pe site lucruri si mai interesante decit combinatiile de culori, font, aliniere ect.

E vorba de programare, modul in care a fost facut site-ul. Obectia a fost la extragerea lectiei din baza de date. Daca accesam http://ciobanu.cich.md/lectii_view.php?id=' atunci v-om obtine un Warning care se cearta ca rezultatul mysql cererii contine o eroare. Care este concluzia: 
1. Nu este validata intrarea datelor din Get, daca id-ul este de tip intreg pozitiv atunci intrarea $_GET['id'] trebuia controlata daca valoarea ei e disponibila pe domeniul de definitie.
2. Functia mysql_fetch_array() se executa chiar daca $result e fals adica cererea (mysql_query) a fost eronata, acesta poate fi cotrolat usor cu if ($result) + ar fi de dorit de controlat daca s-a selectat macar un rind din baza de date (adica este vreun articol ce satisface id-ului) se face cu if (mysql_num_rows($result) > 0)
Si o mica obectie: functiile mysql_ in prezent nu sunt recomandate de utilizat deoarece sunt vulnerabile si incomode in utilizare, as recomanda PDO.

Acum putina informatie pentru cei ce au avut nevoie sa treaca un test de pe site, unde sunt intrebarile sunt si raspunsurile pur si simplu trebuie cautate putin: dupa cum ati observat fiecare test poate fi accesat doar cu parola, o afli usor privind sursa paginii, parametrul functiei checkForPsw este insusi parola.
Deci undes raspunsurile? 
Se alfa in dosarul DFGBRTGBRT34443g4rtrtgvfrtvrtvrtvrt insa Apache nu ne permite sa vedem ce fisiere sunt acolo de aceea avem nevoie anume de fisierul cu intrebari si raspunsuri, iar numele fisierului v-a fi parola introdusa plus extensia xml, exemple:
1. /DFGBRTGBRT34443g4rtrtgvfrtvrtvrtvrt/comunitate.xml
2. /DFGBRTGBRT34443g4rtrtgvfrtvrtvrtvrt/structura.xml
ect.
Solutia ca raspunsurile sa nu fie vizibile este stocarea lor in baza de date chiar si a intrebarilor, astfel script-ul testului v-a trimite o cerere Ajax cu id-ul intrebarii si raspunsul userului spre un fisier special care v-a selecta din baza de date raspunsul si v-a introarce 1 daca a fost adevarat si 0 daca fals. E mai complicat insa e mai protejat cu toate ca si pentru acesta poate fi gasit hack de raspunsuri sub forma unui userscript.

Deci facem totalurile: profesia de programator/profesor de programare este una care trebuie sa inveti mereu si sa accepti corectiile altora daca sunt adecvate. Acest review nu schimba nimic cu exceptia ca sa v-a corectati pe greselile altora si greselile pe care s-au invatat altii sa fie corectate. A avea un site didactic intradevar este ceva rar in colegiul nostru insa site-ul trebuie mereu perfectionat.

Succese si incercati mereu sa spuneti adevarul/opinia asta v-a usura la toti viata :D 

 

Ți-a plăcut articolul? Apasă Like:

Tag-uri:

Comentarii: