PHP Post Get and Files Methods

Innehållsförteckning

Ofta befinner vi oss på att skapa en enkel webbsida så vi använder HTML -språket för att programmera det, men när vi går framåt inser vi att det inte är så enkelt och att vi vill ange information för att senare se eller hantera det och ändra det, och för detta måste vi förlita oss på datainmatningsformulär. Det är i det ögonblicket då HTML -språket blir för litet för oss och vi vänder oss till andra språk. Det vanligaste är skapa inmatningsformulär i PHP, och för detta kan vi använda Hämta och lägg upp -metoder.

Funktionen för båda metoderna är mycket enkel, vi skickar ett formulär till ett php -skript så att informationen i vårt formulär är tillgänglig i skriptet. På detta sätt uppnår vi att vår webbplats är interaktiv och att informationen som vi anger med tangentbordet är tillgänglig för visning eller för att kunna använda den.

Det är mycket viktigt att veta hur skapa ett enkelt HTML -formulär och använd sedan någon av de två metoderna.
Ett exempel på en enkel form är följande:

 Användare:
Lösenord:
Form är en tagg som indikerar att vi ska skapa ett formulär i HTML. Och här inne är de två attributen som används:
  • handling - som berättar vilken typ av åtgärd vårt formulär kommer att utföra, det vill säga om informationen ska skickas till ett mejl eller till ett program eller till en webbsida.
  • metod - är attributet som definierar vilken typ av metod vi använder, Get or Post, det vill säga hur formuläret ska skickas. Det kan vara GET eller POST men som standard om vi inte anger det blir det GET.

Men nu, vad är skillnaden mellan att använda Postmetod och den Få metod?

Låt oss börja med Get:

GET -metodDet första är att i föregående exempel på form i metod vi måste sätta "Skaffa sig".
Om vi ​​skickar data via Get, skickas informationen i en URL och när sidan vi begär har läst in data som har skickats är synlig för användaren, det vill säga när du anger data i vårt formulär, i det här fallet användarnamnet och lösenord, visas dessa data synliga i vår webbläsare enligt följande:
http://miweb.com/for… lösenord = 1986

Med andra ord, namnet på vår webbsida visas först, följt av namnet på formuläret separerat med en stapel, det vill säga själva webbadressen; och efter frågetecknet visas värdena för de fält som vi har angett på tangentbordet.

För att komma åt informationen som skickas igenom få med PHP formen är följande:

 
Vi måste använda variabeln $ _GET med namnet på fältet som vi vill hämta för att samla in informationen och ange den i valfri variabel och sedan kan vi använda den normalt som vilken annan variabel som helst.
Det visualiseras med eko och det öppnas eller modifieras på samma sätt som med alla andra variabler som vi använder i php.

De nackdelen med att använda Get -metoden är då att informationen vi anger kommer att vara synlig och det skickas inte på ett dolt sätt. Därför, om vi skickar konfidentiell information som lösenord, kreditkort, etc. kommer vår information inte att vara säker.

Övrig nackdelen med att använda Get är att om vårt formulär har många fält, kommer alla värden att sammanfogas i vår webbadress, så vi kommer att ha en alltför lång adress i webbläsaren, och ändå är den maximala längden som stöds endast 2048 tecken.

Dessutom måste det tilläggas att få metod binär information eller dokument kan inte skickas till den, utan accepterar endast ASCII-kodade tecken.

Sammanfattningsvis kan vi säga att GET -metoden inte rekommenderas i allmänhet om vi inte kommer att skicka oviktig information eller som inte spelar någon roll att den är synlig för alla, och att det är lite information.

POST -metodI det här fallet i HTML -inmatningsformuläret måste vi lägga in post istället för att komma in metod. Till skillnad från Get, går informationen som vi skickar via formuläret inte genom URL: en utan krypterad eller inte genom http -begäran.

Hur man använder Posta i php är nästa:

 
Som vi gjorde i Get sparar vi innehållet i fältet vi vill ha i alla variabler, men den här gången $ _POST. Det fungerar exakt samma sak när det gäller att titta på det, ändra informationen etc.

Vad fördelar jämfört med Get de hittar varandra:

  • Det finns ingen begränsning av 2048 tecken i storlek som det fanns med Get.
  • Information kan resa säkert om vi skickar den genom några protokoll.
  • Förutom att acceptera ASCII -kodade tecken kan vi också skicka binär data.

FILES -metodMed Få metod vi sa att filer eller binär data inte kunde skickas. Med postmetod Ja vi kan skicka filer, men det är en speciell form av postmetoden som heter FILES eftersom identifieraren är $ _FILES.
För detta måste du ändra HTML -formulär:

 Fil att ladda upp: 
Vi har bara introducerat i den första raden det reserverade ordet enctype, som är ett attribut för formulärtaggen som berättar hur informationen kommer att gå när den skickas genom formuläret. I det här attributet har vi lagt multipart / form-data vilket innebär att vi ska skicka binär data och inom själva formuläret måste vi ange att det som ska skickas är en fil genom att sätta filen i inmatningstypen.
I det här fallet kommer vi inte längre att använda variabeln $ _POST men vi måste använda $ _FILES, och när det gäller filer, är det bekvämt att göra en felhantering som i följande exempel:
 0) {echo "Fel:". $ _FILES ["file"] ["error"]. "
";} else {echo" Namn: ". $ _FILES [" file "] [" name "]."
"; echo" Type: ". $ _FILES [" file "] [" type "]."
"; echo" Storlek: ". $ _FILES [" fil "] [" storlek "]."
"; echo" Path: ". $ _FILES [" file "] [" tmp_name "];}?> var13 ->
var:
-> $ _ FILES ["file"] ["error"] innehåller felkoden som är associerad med filen i fråga.
-> $ _ FILES ["file"] ["name"] är namnet på filen.
-> $ _ FILES ["file"] ["type"] är typen av fil som skickas om det värdet angavs. Detta fält är inte markerat på serversidan så informationen kanske inte är korrekt.
-> $ _ FILES ["file"] ["size"] anger filens storlek, alltid uttryckt i byte.
-> $ _ FILES ["file"] ["tmp_name"] det är sökvägen eller det tillfälliga namnet på filen där filen som vi laddar upp till servern lagras.

AvslutningEfter förklaringen vet vi redan att det smartaste är att använda POST -metod vid tidpunkten för att göra våra anmälningsformulär för att kunna hantera informationen med mer säkerhet och FILES -metod om vi vill ladda upp filer till vår webbplats.

Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave