Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] $_GET i $_POST
Forum PHP.pl > Forum > Po stronie przeglądarki
damianek420
Witam ! smile.gif
Dopiero się uczę i chciałem dowiedziec sie kilka kwestii a więc:

ogólnie to rozumiem to tak:
$_get- pobiera jakąś wartość i wysyła ją do adresu .
$_post - pobiera jakąś wartość i umieszcza ją w tablicy.

no więc...

Jeżeli mamy 2 zmienne $_GET o róznych indeksach i wartosciach czy da sie obie na raz przesłać do innego pliku? (wiem że raczej sie da ale jak biggrin.gif ) ( coś typu: strona.php?kolor=czerwony&rozmiar=16 czy jakoś tak )

zdefiniowalem zmienna $_POST na tej samej stronie która sie odnosi do tej samej strony na której jest umieszczona (czyli action='') Czy da sie jakoś odnieść do niej na innej stronie?
Czy jej zakres globalny obejmuje wyłącznie pllik do którego się odnosi ?

Mam nadzieje ze zrozumieliscie o co mi chodzi smile.gif)
viking
Źle to rozumiesz. Na początek http://wwwgo.pl/article/1/protokol_http
Tablica _GET zawiera dane przesyłane w pasku adresu
Tablica _POST to część żądania wysyłanego do serwera (patrz link wyżej)

Zrób sobie prosty test print_r($_GET) i analogicznie dla POST. Strona do której wysyłasz może te dane odebrać.
michat34
nie wiem czy cie dobrze rozumiem, jesli chodzi o przesyłanie metodą get to na inna strone mozesz je przesłac np linkiem
  1. <a href="mojastrona.pl?wartosc1=10&wartosc2=11">link</a>

i mozesz je wtedy pobrac na tej stronie $_GET['wartosc1'] i $_GET['wartosc2']

a post to zmieniasz action oczywiscie
nie jest tak ze jak zadeklarujesz np w post jakas wartosc na jednej stronie to jest widoczna na wszystkich innych.
nie wiem czy o to ci chodzilo wiec jak cos popraw mnie wink.gif
Szymciosek
Jeśli masz na myśli, że get możesz uruchomić w każdym pliku, to NIE, tak czy inaczej musisz w tym pliku dać

$_GET['wartosc1']
wtedy owszem zadziała w danym pliku.

POST dokładnie tak samo, tylko w pasku adresu nie widzisz tego co się przesyła - bezpieczniej.
viking
Cytat(Szymciosek @ 27.09.2012, 17:41:59 ) *
...nie widzisz tego co się przesyła - bezpieczniej.

Tu bym uważał że na początek z takimi stwierdzeniami bo a nuż cię ktoś źle zrozumie i sobie narobi problemów później. Metoda POST w żaden sposób nie jest bezpieczniejsza od GET jeśli chodzi o włamania. Chodzi tylko o to że automatycznie klikając w jakiś URL nie przekażesz przypadkowo parametrów.
damianek420
okej a jak mam coś takiego:
Kod
echo"Wybierz tabelę:
<form name='wyszukiwarka2' method ='GET' action='tabele.php'>
<select name='tabela'>";
for($x=0;$x<$liczba;$x++){
$nazwa=mysql_tablename($id_zas,$x);
echo"<option>".$nazwa."</option>";
}
echo"</select>
<input type='submit' value='Wybierz' >
</form>";


No i po kliknięciu Wybierz otwiera mi się tabele.php?tabela=pracownicy .Czy da się do tego jeszcze dodać zeby przechodziło na tabele.php?tabela=pracownicy&baza=pracownik ? tongue.gif
Adrian1207
Po pierwsze to chyba powinno być w przedszkolu, po drugie Tobie bardziej chodzi o PHP, a nie 'Po stronie przeglądarki'. PHP czyli obsługa formularzy i tablic wykonuje się po stornie serwera. Samo wyświetlanie formularzy nie ma tutaj za wiele do rzeczy.

A co do pytania: da się, wystarczy input typu hidden. Dodaj w formularzu:
  1. <input type="hidden" name="baza" value="pracownik" />
A opcjom dodaj atrybut value.

Swoją drogą ten formularz nie przechodzi do tabele.php?baza=pracownicy, musiałeś coś pomieszać. Przejdzie raczej do tabele.php?tabela=pracownicy o ile taka jest wartość opcji.
damianek420
no fakt pomylilem sie tongue.gif okej działa dzieki wielkie ! tongue.gif a tyle sie z tym męczyłem ;p
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.