Programare pentru web (IV)

by donpedro

În numărul trecut al revistei am încercat să vă familiarizez cu structurile de control ale PHP-ului, vizând în principal sintaxa. Considerând că şi aceste exemple prezentate v-au fost de ajutor ca un punct de plecare în studiul individual, astăzi voi încerca să vă prezint ceva mai practic şi cu aplicabilitate imediată, câteva noţiuni despre formularele pe web. Să presupunem un formular cu un singur câmp de tip text. Codul HTML pentru acest formular poate arăta aşa:

Deşi iniţial vă anunţasem că nu am de gând să insist asupra codului HTML, de data aceasta cred că se impune o excepţie. În rândurile de mai sus trebuie să ţinem cont de următoarele:

– tag-ul -from-
Are ca parametrii method (care poate fi GET sau POST) şi action (“formresults.php”, parametru ce defineşte pagina în care vor fi trimise variabilele din acel formular);
Despre GET şi POST se pot spune multe, însă în faza de început vă rog să notaţi următoarele:
• GET va adăuga după numele paginii pe care sunteţi caracterul ? urmat de numele şi
valorile variabilelor. POST nu va face acest lucru;
• GET este limitat ca număr de caractere (maximum 1024 de caractere după ?) pe când
POST nu;
• GET permite folosirea butoanelor back şi refresh ale browserului pe când POST va afişa
un mesaj tipic de genul “Page has expired”.
Pentru început vă recomand să folosiţi GET pentru formulare mici ca dimensiuni şi ale căror date nu afectează securitatea. În celelalte cazuri folosiţi POST.

– tag-ul -imput-
Are printre parametrii type (poate fi text, radio, checkbox, submit, reset) şi name.
• type defineşte tipul de date pe care respectivul câmp le poate trimite, cel mai simplu fiind
cel text. type=button, type=submit şi type=reset sunt un caz special, fiind afişate butoane cu
textul de la parametrul value. type=submit şi type=reset sunt însă două butoane speciale.
type=submit va trimite conţinutul formularului către pagina introdusă la form action;
type=reset va şterge tot ceea ce s-a completat în formular.
• name este poate cel mai important parametru; el defineşte numele variabilei ce va
memora conţinutul câmpului.
Să încercăm un exemplu
Am completat câmpul de text din formularul descris mai sus cu cuvântul “test”. La apăsarea butonului “Trimite datele” browserul va fi redirectat la o adresa al cărei sfârşit arată exact aşa:
formresults.php?nume_camp=test&submit=Trimite+datele
Creez acum fişierul formresults.php în care mă interesează să pot afişa ceea ce am completat în formular. Nimic mai simplu:

După cum vă spuneam, PHP-ul creează automat variabile cu numele câmpurilor din formular, atribuindu-le în acelaşi timp şi valorile.
Acestea ar fi noţiunile de bază în ceea ce priveşte lucrul cu formularele. Voi încerca acum să aplic cele de mai sus la un formular care cere un nume de utilizator, o parolă, parolă pentru confirmare şi o adresă de email. Este esenţial ca datele introduse să fie verificate şi, în caz de eroare să se ceară reintroducerea lor.
În primul rând am nişte decizii de luat, înainte de a scrie codul propriu-zis. Voi folosi GET sau POST? O decizie relativ simplă. Voi folosi POST pentru o mai bună securitate a datelor.
Cealaltă decizie pe care trebuie să o iau este mai complicată. Voi trimite datele din formular către acelaşi fişier sau către un altul. Pentru că mă interesează să pot afişa mesaje de eroare, voi trimite datele către acelaşi fişier, să-i zicem index.php.

am luat în calcul următoarele:
– ca numele utilizatorului să aibă cel puţin 8 caractere;
– ca parola să aibă cel puţin 8 caractere;
– ca parola şi confirmarea ei să fie identice;
– ca emailul să conţină atât caracterul @ cât şi .
Cu aceste două coduri, obţin scriptul de mai jos care face exact ceea ce mi-am propus:

Închei aici, îndemnându-vă, ca de obicei, să vă jucaţi, să exersaţi şi să descoperiţi că PHP-ul este mai simplu decât credeaţi. Aştept, deasemenea, sugestiile şi întrebările dumneavoastră prin email.

bogdan.nita@ealliance.ro

S-ar putea să vă placă și