Czym się różnią metody POST i GET przy wysyłaniu danych do skryptu ?
Metody wysyłania formularzy POST i GET znacznie różnią się od siebie. Najczęściej używaną metodą przesyłania danych jest POST, z uwagi na większe możliwości i wyższy stopień bezpieczeństwa.
POST
Gdy wysyłasz dane metodą POST do skryptu PHP, zostaną one umieszczone w tablicy $_POST, która jest tablicą superglobalną, czyli można się do niej odwołać w każdym miejscu kodu bez dodatkowych zabiegów. W wersjach PHP starszych. niż 4.1.0 tablica ta nosi nazwę $HTTP_POST_VARS. Metoda POST nie narzuca ograniczenia ilości przesyłanych danych, dla tego jest z powodzeniem stosowana w ogromnej większości formularzy na stronach WWW. Dodatkowym jej atutem jest fakt, że podczas wysyłania danych użytkownik nie może podejrzeć ich treści, jak to ma miejsce przy stosowaniu metody GET. Ta właściwość POST czyni ją najlepszym rozwiązaniem także przy przesyłaniu danych autoryzacyjnych. Metoda ta służy także do uploadowania plików.
GET
Dane uzyskane z formularza przy użyciu GET umieszczane są w tablicy $_GET, lub $HTTP_GET_VARS w wersjach PHP starszych, niż 4.1.0. Tablica ta także jest superglobalem. Metoda GET różni się od POST tym, że posiada ograniczenie ilości przesyłanych danych. Są one umieszczane w adresie docelowego dokumentu. Jeśli więc wyślesz zmienną $imie i $nazwisko do skryptu "skrypt.php" używając GET, to zawartość pola formularza zostanie przesłana w adresie: "skrypt.php?imie=wartosc&nazwisko=wartosc". Adres dokumentu został oddzielony od parametrów znakiem zapytania, a same parametry oddziela od siebie znak ampersand ("&"). Widać wyraźnie, że ilość danych przekazywanych metodą GET jest ograniczona maksymalną długością odnośnika do skryptu.
ten form metoda post:
form.html
<FORM NAME="formularz" ACTION="index.php" METHOD="post">
<INPUT NAME="tekst" TYPE="text">
<INPUT TYPE="submit" VALUE="WYSLIJ">
</FORM>
index.php<?php
echo $_POST['tekst'];
?>
ten form metoda get:form.html<FORM NAME="formularz" ACTION="index.php" METHOD="get">
<INPUT NAME="tekst" TYPE="text">
<INPUT TYPE="submit" VALUE="WYSLIJ">
</FORM>
index.php<?php
echo $_GET['tekst'];
?>
Nie poszlo Ci za pierwszym razem dlatego ze nie wskazales metody wyslania danych.
Tak jak JakubC napisal przy wylaczonym register globals pobrac dane ze zmiennej mozna jedynie uzywajac tablicy superglobalnej.
pozdrawiam.
(Wlacz sobie register globals to pobierzesz dane ze zmiennej normalnie przez echo $zmienna

_________________
www.komputer.cuprum.pl
Intel Core 2 DUO QUAD, DUAL DDR2 8GB, GF8800 1 GB, HDD SATAII 750 GB + 750 GB + 80GB + IDE HDD 40 GB, Linux Mandriva 2008 PP