Creeaza.com - informatii profesionale despre


Simplitatea lucrurilor complicate - Referate profesionale unice
Acasa » scoala » informatica » php
Preluarea datelor dintr-un formular HTML

Preluarea datelor dintr-un formular HTML


Preluarea datelor dintr-un formular HTML

In sectiunea precedenta am vazut cum pot fi transmise date catre un script prin intermediul unor parametri specificati la apelul scriptului. Majoritatea scripturilor prelucreaza date preluate de la utilizator prin intermediul formularelor HTML.

Fie urmatorul formular HTML, care permite introducerea a doua siruri de caractere reprezentand numele si prenumele utilizatorului:

Sursa acestui fisier este:

<Html>

<Head>

<Title> Exemplul 2.1 </Title>

</Head>

<Body>

<Form Name='frm1' Action='ex1.php' Method='Post'>

Nume: <Input type='textbox' size='20' Name='txtnume'><BR>

Prenume: <Input type='textbox' size='20' Name='txtprenume'><BR>

<Input type='submit' Value='Trimite' Name='cmdtrimite'>

</Form>

</Body>

</Html>

Pentru a putea transmite datele din formular catre un script PHP   va trebui sa avem grija de urmatoarele aspecte:

  • Vom specifica adresa scriptului PHP   care prelucreaza datele utilizand atributul ACTION al marcajului FORM. Se va specifica fie calea absoluta, fie calea relativa a scriptului dorit.

Vom utiliza calea absoluta

https://adresa_server/dir1/dir2//dir_n/nume_script.php?p1=val1&p2=val2

. . . k=val_k

numai daca scriptul se afla pe alt server decat cel care gazduieste fisierul ce contine formularul. In rest, este recomandata utilizarea cailor relative la directorul ce contine formularul. Apelul



../scripturi/nume_script.php?p1=val1&p2=val2.pk=val_k? p1=val1&p2=val2.pk=val_k

presupune ca scriptul apelat se afla in directorul scripturi din directorul parinte al folderului curent.

  • Specificam metoda de transmitere a datelor catre script  (Method ="metoda"), unde metoda poate fi GET sau POST.
  • Pentru fiecare element al formularului se va specifica un nume unic (identificator) prin atributul NAME
  • Formularul trebuie sa aiba un buton de tip SUBMIT, prin  a carui actionare se declanseaza transmiterea datelor catre script.

Scriptul ex1.php, care preia datele din formular si le afiseaza in fereastra navigatorului, are urmaorul continut:


Studiind continutul scriptului identificam urmatorii pasi care trebuie efectuati:

Preluarea datelor din formular

o      Valoarea unui element din formular este accesibila scriptului prin intermediul vectorului $_POST, daca metoda de transmitere este POST, respectiv $_GET, daca metoda de transmitere este GET. Daca elementul are identificatorul txtnume atunci valoarea scrisa de utilizator in acel element este $_POST["txtnume"] sau $_GET["txtnume"].

o      Datele din formular pot fi preluate si "direct", utilizand variabile de forma $nume_element (in exemplul nostrum ar fi $txtnume si $txtprenume), dar metoda este dependenta de setarile efectuate asupra variabilei sistem register_globals, care trebuie sa aiba valoarea ON. Configurarea interpretorului PHP   si a serverului WEB este realizata doar de administrator. NU este recomandata aceasta metoda deoarece, din motive de securitate, pe majoritatea serverelor variabila register_globals este setata OFF. Pentru o lista completa a restrictiilor in vigoare pe serverul unde va gazduiti situl trebuie sa luati legatura cu administratorul acestuia (nu inainte de a citi cu atentie documentele puse la dispozitie la crearea contului).

Validarea datelor. In majoritatea cazurilor, asupra datelor primite de la utilizator se efectueaza  diverse verificari. In exemplul nostru, am verificat daca numele si prenumele trimise sunt nevide. Alte validari pot fi: verificarea unor limite pentru datele numerice, verificarea validitatii unei adrese email, verificarea marimii unor siruri de caractere, e.t.c. In cazul in care datele nu sunt valide se va afisa un mesaj de eroare.

Prelucrarea propriu-zisa consta in prelucrarea datelor si trimiterea unui raspuns catre browserul utilizatorului.





Politica de confidentialitate


creeaza logo.com Copyright © 2024 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.