
4ac19761000b09f9dae69b0fea99009e.ppt
- Количество слайдов: 36
Marrja e te dhenave nga klienti Leksion 5
Format ne Web n Tagu FORM n Cfare ndodh kur dergoni nje forme ne HTML? Perdoruesi ploteson kutite e tekstit dhe klikon nje buton submit. Me pas ky informacion i dhene nga perdoruesi paketohet dhe dergohet ne web server. Web serveri e merr kete informacion dhe furnizon me te motorin e skriptit te PHP-se. PHP perpunon kete informacion dhe e kthen ate mbrapsht si pjese te pergjigjes HTTP. n n n Per te ndertuar nje forme ne HTML perdorim taget
Format ne Web n n ACTION Atributi ACTION i tregon serverit se ne cilen faqe duhet te shkoje, pasi perdoruesi klikon nje buton submit ne forme. Nuk ka rendesi nese kjo faqe eshte HTML e thjeshte, PHP apo nese perdor ndonje teknologji server-side, per sa kohe qe faqja ekziston ne web server. Ai mund te perdoret per t’u lidhur me nje faqe HTML, si me poshte: ¡
Format ne Web n n Megjithate, kur vendosim nje faqe PHP si pjese te atributit ACTION, ajo çfare bejme ne te vertete eshte dergimi i informacioneve te futura ne forme, ne interpretuesin e skripteve te PHP-se, per t’u perpunuar. Atributi ACTION thjesht i tregon serverit ne cilen faqe te shkoje me pas. Nese e ruani faqen e mesiperme si test. html ne vend te test. php, atehere faqja nuk do te dergohej ne interpretuesin e PHP-se dhe asgje nuk do te shfaqet po te mos konfigurohet PHP per te interpretuar (parse) skedaret. html.
Format ne Web n n n METHOD Atributi METHOD kontrollon menyren se si informacioni dergohet ne server. Kete mund ta beje ne dy menyra. Keto jane metodat GET and POST dhe perdoren si me poshte:
GET n n n Metoda GET i tregon browserit qe te shtoje ne URL vlerat qe perdoruesi vendosi ne forme. Per kete browseri shton nje pikepyetje (? ) ne fund te URLse per te treguar se ku mbaron URL-ja dhe ku fillon informacioni i formes. Me pas informacioni i formes transmetohet ne formen e çifteve emer/vlere. Nje çift emer/vlere punon ne menyre te ngjashme me nje variabel. Pjesa e pare eshte emri, i cili vepron si nje identifikues. Pjesa e dyte eshte vlera qe doni te ruani. Psh: ¡ ? animal=cat Ketu "animal“ eshte emri, ndersa "cat" eshte vlera. Kjo mund t’i shtohet URL-se si vijon: ¡ http: //www. nonexistentserver. com/test. php? animal=cat
GET n Browseri shton automatikisht informacionin ne URL kur dergon kerkesen e faqes ne web server. Ne URL mund te shtoni me shume se nje çift emer/vlere nese çdo çift e ndani me nje ampersand (&). Psh: ¡ http: //www. nonexistentserver. com/test. php? furryanimal= cat&spikyanimal=porcupine n Pjesa e shtuar ne URL njihet si nje query string. n Thame qe çiftet emer/vlere jane si variablat. Ne fakt kur ato kalohen ne web server perpunim, PHP-ja i ben ato te vlefshme si variabla.
GET Sipas rastit mund t’ju nevojitet te kaloni hapesira ne vlerat qe perbejne query string-un. Psh: nese keni nje form, qe ka nje tag
Kodimi URL n n n Ne rastin e mesiperm plusi (+) zevendeson hapesirat. Po nese duam te vendosim nje (+) ne Textarea? Ne kete rast karakteri ne fjale duhet te zevendesohet nga nje kod, i cili nenkupton kete karakter te veçante. Ky njihet si Kodim i URL-se Nje bashkesi karakteresh te veçanta nuk mund te shfaqen ne URL, prandaj per ato behet nje kodim ne URL. Ne fakt perdoruesi nuk duhet te beje asgje per te bere kodimin sepse kjo kryhet nga vete browseri, i cili zevendeson çdo karakter te tille me nje kod. Query stringu me %20 ne vend te hapesires do te duket si me poshte: http: //chrisu/form. php? Text. Area=I%20 would%20 like%20 to%20 see%20 a%20 dynamic%20 menu%20 in%20 operation
Kodimi URL
POST n n n Nje disavantazh i query string-ut eshte se informacioni eshte publik. Nese nuk deshironi qe informacioni i derguar nga forma te shfaqet ne URL, atehere duhet te perdorni metoden POST. Ajo punon pothuajse ne menyre identike me metoden GET, me ndryshimin qe informacioni ne forme dergohet ne trupin e kerkeses HTTP, ne vend qe te dergohet si pjese e URL-se. Kjo do te thote qe nuk eshte e dukshme per kedo, sepse nuk shtohet ne URL. Gjithashtu POST lejon te transmetohet nje sasi e madhe informacioni, ndersa ne GET ka nje kufi fizik per sasine e te dhenave qe mund te transmetohet si pjese e URL-se.
Duhet te perdorim GET apo POST? n Per kete ka nje perzierje opinionesh: disa thone qe nuk duhet te perdorni pothuajse kurre metoden GET, per shkak te pasigurise dhe kufizimit ne madhesi, te tjere thone qe duhet te perdorni GET per te marre informacion, ndersa POST duhet te perdoret kurdo qe modifikoni te dhenat ne web server. Pra nuk ka rregulla te prera per kete. n Nje disavantazh i POST eshte qe faqet e ngarkuara me POST nuk mund te shenjohen (book-marked) siç duhet, kurse faqet e ngarkuara me GET permbajne ne URL te gjithe informacionin qe nevojitet per te riprodhuar kerkesen. Ne shume raste mund te shenjoni rezultatet e dergimit te formes duke perdorur GET, psh ne nje kerkim ne Alta Vista. Prandaj shume motore kerkimi perdorin GET. n
Duhet te perdorim GET apo POST? n Gjithashtu edhe vete metoda POST nuk eshte e sigurte, meqe informacioni vendoset ne trupin e kerkeses HTTP dhe nuk eshte i dukshem menjehere. Informacioni nuk eshte i enkriptuar dhe perseri mund te kapet lehtesisht nga nje hacker. Per te vertetuar qe eshte i sigurte, ju nevojitet nje lidhje e sigurte me nje server te sigurte. n Se cilen metode duhet te perdorni, kjo varet nga ajo çfare deshironi qe te beje forma: ¡ Nese perdorni GET keni parasysh kufizimet dhe faktin qe informacionet jane te dukshme per kedo. ¡ Nese perdorni POST, keni parasysh qe ajo mund shenjohet nga motore kerkimi dhe vetem per faktin se eshte me e fshehte, nuk do te thote se eshte me e sigurte.
Kontrollet e formes ne HTML dhe PHP n n n Le te shohim disa kontrolle ne HTML dhe menyren se si mund te perdoren ato per te mbledhur informacionet e dhena ne nje forme dhe si mund te perdorim PHP-ne per te arritur me pas ne kete informacion. Te gjithe shembujt ketu, kerkojne dy faqe web. E para terheq informacionin e postuar nga perdoruesi dhe e dyta e kthen informacionin nga web serveri dhe interpretuesi i skripteve, ne browser. Faqja e pare nuk permban asnje skript PHP. Ne fakt ne shume site, faqja web qe permban formen do te jete HTML e paster dhe do te kete prapashtesen. htm ose. html. Natyrisht nuk ka nevoje qe te dergohet informacion ne interpretuesin e PHP-se, sepse meqe nuk permban PHP, atehere kjo vetem se do te shtonte me teper kohe per te gjeneruar faqen web qe do te kthehet ne browser.
Text Fields (Text Boxes) n n n n Faqja e pare text. html
Text Fields (Text Boxes)
Text Fields (Text Boxes) n Pasi perdoruesi klikon ne butonin submit atehere afishohet faqja text. php, si me poshte: n KUJDES: Emrat e variablave jane case-sensitive.
Text Areas n n n n n Faqja e pare textarea. html
Text Areas
Text Areas n n n Vereni URL-ne, http: //chrisu/textarea. php. Ne kete rast eshte perdorur metoda POST, prandaj nuk ka query string ne URL. Vereni edhe qe ne faqen e pare, kur shkruajme tekstin brenda textareas, nuk perdorim taget
, per te ndare rreshtat. Ndersa ne faqen e dyte kur afishojme permbajtjen e variablit $Web. Sites informacioni afishohet ne nje rresht te vetem.
Check Boxes n n n n Faqja e pare checkbox. html n
Check Boxes n Ne kete rast nese perdoruesi klikon (vendos shenjen) ne check box, atehere ne faqen tjeter do te afishohet ‘on’ ndersa nese nuk eshte e check-uar atehere nuk afishohet asgje. Pra ketu krijohet nje variabel qe nuk merr nje vlere te caktuar nga ne dhe ne rastin e dyte variabli nuk permban asnje vlere.
Multiple Check Boxes n Faqja e pare checkboxes. html n
"; echo “$_POST[Choice 2]
"; echo “$_POST[Choice 3]
"; ? >
Multiple Check Boxes
Multiple Check Boxes n KUJDES: Nese i emertoni te gjithe checkbox-et me te njejtin emer atehere edhe nese klikoni disa checkbox-e, do te afishohet vetem vlera e checkbox-it te fundit qe keni zgjedhur. ¡ ¡ ¡ ¡ Have you ever eaten haggis before?
Have you ever eaten snails before?
Have you ever eaten locusts before?
Radio Buttons n Faqja e pare radio. html n
Radio Buttons Ne faqen tjeter do te afishohet “You selected the answer: Lisbon”
List. Box ¡ Faqja e pare listbox. html
List. Box Faqja e dyte listbox. php HTML>
Engine Size(s): {$_GET[Engine. Size][0]}"; echo "
{$_GET[Engine. Size][1]}"; echo "
{$_GET[Engine. Size][2]}"; echo "
{$_GET[Engine. Size][3]}"; ? >