Adesea ne găsim făcând o pagină web simplă, așa că apelăm la limbajul HTML pentru a o programa, totuși, pe măsură ce avansăm, ne dăm seama că nu este atât de simplu și că dorim să introducem informații pentru a le vizualiza sau manipula ulterior și a le modifica, și pentru aceasta trebuie să ne bazăm pe formulare de introducere a datelor. În acel moment, limbajul HTML devine prea mic pentru noi și apelăm la alte limbi. Cel mai frecvent este creați formulare de intrare în PHP, și pentru aceasta putem folosi Obțineți și postați metode.
Funcționarea ambelor metode este foarte simplă, trimitem un formular către un script php, astfel încât informațiile din formularul nostru să fie disponibile în respectivul script. În acest fel, realizăm că site-ul nostru web este interactiv și că informațiile pe care le introducem de la tastatură sunt disponibile pentru vizualizare sau pentru a le putea folosi.
Este foarte important să știm cum creați un formular HTML simplu și apoi utilizați oricare dintre cele două metode.
Un exemplu de formă simplă este după cum urmează:
Utilizator:Form este o etichetă care indică faptul că vom crea un formular în HTML. Și aici, cele două atribute utilizate sunt:
Parola:
- acțiune - care ne spune ce tip de acțiune va efectua formularul nostru, adică dacă informațiile vor fi trimise către un e-mail sau către un program sau către o pagină web.
- metodă - este atributul care va defini ce tip de metodă folosim, Obțineți sau postați, adică modul în care va fi trimis formularul. Poate fi GET sau POST, dar în mod implicit, dacă nu-l indicăm, va fi GET.
Dar acum, care este diferența dintre utilizarea Metoda postării si Obțineți metoda?
Să începem cu Get:
Metoda GETPrimul lucru este că în exemplul anterior al formă în metodă trebuie să punem "Obține".
Dacă trimitem date prin Get, informațiile sunt trimise într-o adresă URL și atunci când pagina pe care o solicităm termină încărcarea datelor trimise este vizibilă pentru utilizator, adică la introducerea datelor din formularul nostru, în acest caz numele de utilizator și parola, datele menționate vor apărea vizibile în browserul nostru după cum urmează:
http://miweb.com/for… parola = 1986
Cu alte cuvinte, numele paginii noastre web apare mai întâi, urmat de numele formularului separat printr-o bară, adică adresa web în sine; iar după semnul de întrebare vor apărea valorile câmpurilor pe care le-am introdus pe tastatură.
Pentru a accesa informațiile trimise prin obțineți cu PHP formularul este după cum urmează:
Trebuie să folosim variabila $ _GET cu numele câmpului pe care dorim să îl extragem pentru a colecta informațiile și a le introduce în orice variabilă și apoi o putem folosi în mod normal ca orice alt tip de variabilă.
Este vizualizat cu ecou și este accesat sau modificat în același mod ca și cu orice altă variabilă pe care o folosim în php.
dezavantajul utilizării metodei Get atunci este că informațiile pe care le introducem vor fi vizibile și nu este trimis într-un mod ascuns. Prin urmare, dacă trimitem date confidențiale precum parole, carduri de credit, etc. informațiile noastre nu vor fi sigure.
Alte dezavantajul utilizării Get este că dacă formularul nostru are mai multe câmpuri, toate valorile vor fi concatenate în URL-ul nostru, deci vom avea o adresă excesiv de lungă în browser și totuși lungimea maximă acceptată este de doar 2048 de caractere.
În plus, trebuie adăugat că obține metoda informațiile binare sau documentele nu pot fi trimise către acesta, ci acceptă doar caractere codate ASCII.
În concluzie, putem spune că metoda GET nu este foarte recomandată în general, cu excepția cazului în care vom trimite informații neimportante sau care nu contează că este vizibilă pentru toată lumea și că este vorba de puține informații.
Metoda POSTÎn acest caz, în formularul de intrare HTML va trebui să punem post în loc să introducem metoda. Spre deosebire de Get, informațiile pe care le trimitem prin formular nu călătoresc prin adresa URL, ci în schimb, criptate sau nu, prin corpul cererii http.
Cum se folosește Postați în php este următorul:
Așa cum am făcut în Get, salvăm conținutul câmpului dorit în orice variabilă, dar de această dată $ _POST. Funcționează exact la fel când vine vorba de vizualizarea, modificarea informațiilor etc.
Ce avantaje față de Get se găsesc reciproc:
- Nu există nicio restricție de 2048 de caractere ca dimensiune pe care a existat-o cu Get.
- Informațiile pot călători în siguranță dacă le trimitem prin unele protocoale.
- Pe lângă acceptarea caracterelor codificate ASCII, putem trimite și date binare.
Metoda FILESCu Obțineți metoda am spus că fișierele sau datele binare nu pot fi trimise. Cu metoda post Da, putem trimite fișiere, dar este o formă specială a metodei de postare numită FIȘIERE, deoarece identificatorul este $ _FISIERE.
Pentru aceasta trebuie să modificați fișierul Formular de introducere HTML:
Fișier de încărcat:Am introdus doar în prima linie cuvântul rezervat enctype, care este un atribut al etichetei formular care ne spune cum vor călători informațiile atunci când sunt trimise prin formular. În acest atribut am pus multipart / form-data, ceea ce înseamnă că vom trimite date binare și, în formularul în sine, trebuie să specificăm că ceea ce urmează să fie trimis este un fișier prin plasarea fișierului în tipul de intrare.
În acest caz nu vom mai folosi variabila $ _POST dar trebuie să folosim $ _FILES, și când aveți de-a face cu fișiere, este convenabil să faceți o eroare de gestionare ca în exemplul următor:
0) {ecou "Eroare:". $ _FILES ["file"] ["error"]. "Unde:
";} else {echo" Name: ". $ _FILES [" file "] [" name "]."
"; echo" Type: ". $ _FILES [" file "] [" type "]."
"; ecou" Dimensiune: ". $ _FILES [" fișier "] [" dimensiune "]."
"; ecou" Calea: ". $ _FILES [" fișier "] [" tmp_name "];}?> var13 ->
-> $ _ FILES ["file"] ["error"] conține codul de eroare asociat fișierului în cauză.
-> $ _ FILES ["file"] ["name"] este numele fișierului.
-> $ _ FILES ["file"] ["type"] este tipul fișierului care este trimis dacă a fost furnizată acea valoare. Acest câmp nu este bifat din partea serverului, deci este posibil ca informațiile să nu fie corecte.
-> $ _ FILES ["file"] ["size"] indică dimensiunea fișierului, exprimată întotdeauna în octeți.
-> $ _ FILES ["file"] ["tmp_name"] este calea sau numele temporar al fișierului în care este stocat fișierul pe care îl încărcăm pe server.
ConcluzieDupă explicație știm deja că cel mai inteligent lucru de făcut este să folosiți Metoda POST în momentul creării formularelor noastre de înscriere pentru a putea gestiona informațiile cu mai multă siguranță și Metoda FILES dacă dorim să încărcăm fișiere pe site-ul nostru web.
V-a plăcut și ați ajutat acest tutorial?Puteți recompensa autorul apăsând acest buton pentru a-i oferi un punct pozitiv