Mycket ofta blir det nödvändigt att överföra data från en klientwebbläsare till en serverfil med ett skript för bearbetning av dessa data. Låt oss titta på exakt hur man organiserar överföringen av php-parametrar till skriptet.
Det är nödvändigt
Grundläggande kunskaper i PHP- och HTML-språk
Instruktioner
Steg 1
För att transportera data från webbformulär i HTTP (HyperText Transfer Protocol) tillhandahålls två metoder - GET och POST. De skiljer sig åt i hur de överförs från klientapplikationen (webbläsare) till serverapplikationen (körbart php-skript). GET-metoden använder adressfältet för detta. Det vill säga namnen och värdena på de variabler som skickas till den läggs direkt till skriptadressen (eller URL - Uniform Resource Locator) genom ett frågetecken (?). URL: en kan till exempel se ut så här:
Här skickas search.php-skriptet en variabel med namnet num med värdet 30, en variabel newwindow med värdet 1 och en variabel safe med värdet av. Servern har fått en sådan begäran av "?" separerar filadressen och delar upp allt annat i par med variabla namn och värden. De resulterande paren fylls i $ _GET-matrisen, varifrån det php-skript som anges i adressen kommer att kunna extrahera dem. I sin enklaste form kan formuläret html-kod för att skicka dessa data från webbläsaren till servern med GET-metoden se ut så här:
Och det enklaste php-skriptet för att ta emot dessa data är så här:
<? php
$ num = $ _GET ['num'];
$ newwindow = $ _GET ['newwindow'];
$ safe = $ _GET ['safe'];
?>
De viktigaste nackdelarna med att skicka variabler med GET-metoden:
- begränsad mängd data, eftersom webbadressens längd inte får överstiga 255 tecken;
- inte alla html-kodtecken kan överföras med den här metoden;
- de överförda uppgifterna är synliga för användaren, vilket inte alltid är acceptabelt ur säkerhetssynpunkt;
Steg 2
Dessa olägenheter och begränsningar kan undvikas genom att använda en annan metod - POST. Den använder speciella områden för nätverkspaket för att överföra datahuvud. I alla andra avseenden är skillnaderna mellan dessa metoder minimala - i ovanstående form av sändning av data kommer bara namnet på metoden att ändras:
Och i php-skriptet, bara namnet på dataarrayen:
<? php
$ num = $ _POST ['num'];
$ newwindow = $ _POST ['newwindow'];
$ safe = $ _POST ['safe'];
?>