Get

Z PHPEdia.pl

Metoda wysłania danych do skryptu najczęściej poprzez formularz HTML. Po wysłaniu formularza dane są dostępne w tablicy globalnej $_GET. W przeciwieństwie do metody POST widzimy dokładnie jakie dane zostały przesłane do skryptu.

Spis treści

Formularz wysyłający dane metodą GET

<form method="get" action="odbior.php">
  <input name="nazwisko" />
  <input type="submit" />
</form>

W pliku odbior.php dane są dostępne w tablicy $_GET

echo $_GET['nazwisko']; //wyświetli dane wpisane w polu "nazwisko"

Tablice w GET

Podobnie do metody POST metoda GET posiada możliwość przesyłania danych w formie tablicy. Przyklad takiego formularza

<form method="get" action="odbior.php">
  Podaj imie: <input name="imie" />
  Podaj nazwisko: <input name="nazwisko" />
  Podaj linki do swoich prac: 
  <input name="prace[]" />
  <input name="prace[]" />
  <input name="prace[]" />
  <input name="prace[]" />
  <input type="submit" />
</form>

W skrypcie odwołujemy się tak:

echo "Dziękujemy <b>".$_GET['imie']." ".$_GET['nazwisko']." za dodanie swoich prac";
echo "<br /> Oto jakie prace dodałeś:<br />";
//wykorzystamy pętlę [[foreach]]
foreach ($_POST['prace'] as $praca) echo $praca."<br />";

Formularz możemy jeszcze bardziej uatrakcyjnić dodając wstawki z javascritp'u dzięki którym użytkownik określiłby ile prac chce dodać. Ale to już osobny temat.

Podgląd danych GET

Dane przesyłane przy pomocy metody GET umieszczone są w adresie strony, a dokładniej w żądaniu pliku. Przykładowo do skryptu znajdującego się pod adresem http://adres.domeny.pl/odbior.php z pierwszego przykładu dane będą wyglądać tak:

http://adres.domeny.pl/odbior.php?nazwisko=xyz

Czyli jak dokładnie widać dane przekazywane są po nazwie pliku i znaku zapytania(?) w formacie nazwa=wartość. Każda dana oddzielona jest znakiem and (&). Przykład kilku danych i tablicy:

http://adres.domeny.pl/odbior.php?imie=adam&nazwisko=rajski&prace[]=http://...&prace[]=http://...&prace[]=http://...&prace[]=http://...

Zobacz też