Razlika između get i post. Korištenje metoda GET i POST. Više o HTTP-u
Zajedničko im je da rade na isti način. Tehnički nema razlike među njima. Ali postoje ideološke razlike.
Pojasnit ću ih u kontekstu PHP-a. Imajte na umu da je HTTP protokol neizravno povezan s PHP-om jer je stvoren za razmjenu html stranicama PHP samo proširuje mogućnosti oba.
GET zahtjev se koristi za primanje podataka, a POST za slanje. (Podsjećamo, oni tehnički rade na isti način).
Stoga su u kontekstu PHP-a, na temelju ove ideologije, učinili sljedeće: 1. Superglobalni nizovi ($ _GET, $ _POST) kreiraju se prema zadanim postavkama svaki put kada pokrenete PHP. 2. Ako se u nizu upita nalazi upitnik (?). Onda sve što se računa nakon njega parametrima GET zahtjev, oni su predstavljeni u formatu "ključ" = "vrijednost", a znak ampersand (&) se koristi kao separator Primjer: GET /index.php?name=Andrey&surname=Galkin ovo je niz upita, postoje 2 parametra. ovi će parametri završiti u nizu $_GET. 3. $ _POST se popunjava na drugi način. sadržaj ovog niza popunjava se iz "zaglavlja zahtjeva". Odnosno, s mjesta skrivenog od pogleda u eksplicitnom obliku. Svu rutinu stvaranja takvih zaglavlja preuzima preglednik. Iako se ponekad nešto ručno uređuje u naslovima.
Najčešće se u obrascima (za dostavljanje podataka) koristi post zahtjev.
Na primjer imamo obrazac za prijavu s 2 polja za prijavu i lozinku.
Zamislimo da koristimo metodu GET. Zatim, prilikom slanja obrasca idemo na sljedeću adresu /login.php?login=Andrey&password=123, slažemo se da uopće nije sigurno prenositi takve podatke na ovaj način. Svatko može otvoriti vaš preglednik i počevši unositi adresu stranice, može vidjeti vaše lozinke i prijave iz povijesti.
Ali ako bismo specificirali korištenjem metode POST, tada bismo primili sljedeći zahtjev: POST /login.php (login = Andrey & lozinka = 123) što bi bilo skriveno u zagradama i ne bi bilo spremljeno u pregledniku.
Općenito, da rezimiramo: GET je dobivanje određene stranice na određeni način (razvrstavanje, trenutna stranica bloga, niz za pretraživanje, itd.). POST - za slanje podataka koji ne utječu na prikaz stranice, u smislu da ti podaci utječu samo na rezultat izvršavanja skripte (prijave, lozinke, brojevi kreditnih kartica, poruke itd.).
I još jedna dobra vijest, mogu se kombinirati npr POST /index.php?page=login (login = Andrey & lozinka = 123) Mislim da sam već dovoljno objasnio što će iz toga proizaći i koji će parametri biti uključeni u koji niz.
Ovaj post ima za cilj objasniti principe prijenosa podataka na Internetu pomoću dvije glavne metode: GET i POST. Napisao sam ga kao dodatak uputama za generator smjenskog rada za one koje malo zanimaju detalji ☺.
Idite na sljedeću adresu (ovo je za vizualno objašnjenje): http://calendarin.net/calendar.php?year=2016 Obratite pažnju na adresnu traku preglednika: calendarin.net/calendar.php ? godina = 2016 Glavna datoteka je imenovana, nakon čega slijedi upitnik (?) i parametar "year" s vrijednošću "2016". Dakle, sve što slijedi nakon upitnika je GET zahtjev. Jednostavno je. Da biste proslijedili više od jednog parametra, ali nekoliko, onda ih je potrebno razdvojiti znakom &. Primjer: calendarin.net/calendar.php ? godina = 2016. & prikaz = radni dani i slobodni dani
Glavna datoteka je i dalje imenovana, nakon čega slijedi upitnik (?), zatim - parametar "year" s vrijednošću "2016", zatim - ampersand (&), zatim - parametar "display" s vrijednošću "work -dani i dani -slobodni".
GET parametri se mogu mijenjati izravno u adresna traka preglednik. Na primjer, promjenom vrijednosti "2016" u "2017" i pritiskom na tipku idete na kalendar za 2017. godinu.
Ovo je prijenos podataka na skriveni način (adresa stranice se ne mijenja); odnosno možete vidjeti što je preneseno samo uz pomoć programa (skripte). Na primjer, u sljedećem alatu za brojanje znakova u tekstu, izvorni podaci se prenose metodom POST: http://usefulonlinetools.com/free/character-counter.php
Ako imate bilo kakvih pitanja, komentara i moj e-mail na usluzi.
Osim GET metode, o kojoj smo govorili u prethodnom postu, postoji još jedna metoda za slanje zahtjeva putem HTTP protokola - POST metoda. POST metoda se također vrlo često koristi u praksi.
Ako nam je za pristup poslužitelju metodom GET bilo dovoljno upisati zahtjev u URL, onda u POST metodi sve radi po drugačijem principu.
Kako bismo ispunili ovakvu vrstu zahtjeva, potrebno je kliknuti na gumb s atributom type = "submit" koji se nalazi na web stranici. Imajte na umu da se ovaj gumb nalazi u elementu
Ako korisnik unese bilo koji tekst u tekstualno polje i klikne na gumb "Pošalji", tada će se poslužitelju poslati tekstualna varijabla s vrijednošću sadržaja koju je unio korisnik.
POST i GET zahtjeve jednostavnim riječima
Ova varijabla će biti poslana metodom POST.
Ako napišete u obliku ovako:
Obrazac ima atribute, navest ću one najčešće:
Napravimo obrazac:
Kao datoteku za rukovanje, stavio sam datoteku test.php jer upravo u njemu pišem primjere za vas. Postavio sam način slanja pošte jer se te metode koriste u 99,9% slučajeva. Našoj formi dao sam i ime – forma
Sada zaronimo u svijet elemenata oblika. Prva stvar koju trebate razumjeti je da su gotovo svi elementi oznake. jedina razlika je u atributu tip kod ovih oznaka. Dopustite mi da navedem korištene elemente obrasca:
Siguran sam da ste ovakva polja vidjeli više puta, pa evo, kako kažu: "bez komentara"
Sada sastavite kratki upitnik za obuku s kojim ćemo dalje raditi. Naš zadatak je sastaviti mali upitnik koji će nam reći ime osobe koja je ispunila, spol, iz koje je zemlje, njegovu omiljenu boju i tekstualno polje u koje korisnik može dodati nešto o sebi. To sam učinio:
Vrijednosti
Vrijednost atributa metode nije osjetljiva na velika i mala slova. Postoje dvije metode - dobiti i objaviti.
Get Ova metoda je jedna od najčešćih i dizajnirana je za dobivanje potrebnih informacija i prijenos podataka u adresnoj traci. U ovom slučaju, parovi ime = vrijednost dodaju se adresi nakon upitnika i odvajaju ampersandom (& simbolom). Pogodnost korištenja metode get leži u činjenici da se adresa sa svim parametrima može koristiti više puta, spremajući je, na primjer, u oznake preglednika, a također mijenjajući vrijednosti parametara izravno u adresnoj traci. post Metoda post šalje podatke poslužitelju u zahtjevu preglednika. To omogućuje slanje više podataka nego što je dostupno metodi get jer ima ograničenje od 4K. Velike količine podataka koriste se na forumima, poštanskim uslugama, populacijama baza podataka, prijenosima datoteka itd.
Obavezni atribut
Zadana vrijednost
HTML5 IE Cr Op Sa Fx
Oznaka FORM, atribut metode
Niste pronašli odgovor na svoje pitanje? Pogledaj ovdje