Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Funkcja $_GET
Forum PHP.pl > Forum > Przedszkole
drymek
Dowiedzialem sie (na tym forum) ze, aby uzyskac dane przesylane przez formularz musze uzyc funkcji $_GET, tylko mi to troche zycie komplikuje. Czy da sie to zrobic tak zeby działalo to tak:

plik.php?zmienna=1

plik.php:
[php:1:fecc18210a]<?php
echo $zmienna;
?>[/php:1:fecc18210a]
i zeby sie wyświetlilo faktycznie 1 a nie jak to jest do tej pory pusta zmienna?
rogrog
musisz mieć ustawione w pliku php.ini

Kod
register_globals on


jeżeli nie masz dostępu do php.ini, a twój serwer pozwala na użycie pliku .htaccess możesz zrobić tak:

stwórz w katalogu ze skryptem plik .htaccess:

Kod
php_flag register_globals on




[manual:ae6c95788a]Using Register Globals[/manual:ae6c95788a]
[manual:ae6c95788a]Plik konfiguracyjny[/manual:ae6c95788a]


m5910: twoje rozwiązanie b. dobre biggrin.gif działa wszędzie, na każdym serwerze - ale za to moje najprawdopodobniej szybsze smile.gif

i jeszcze jedno biggrin.gif : $_GET to nie funkcja tylko zmienna, dokładniej superglobalna i tablica asocjacyjna smile.gif
drymek
Cytat
Wiesz co śmieszny jesteś , trudno ci dopisać : $_GET[''] questionmark.gif
?>[/php]

Moze i jestem, ale problem sie pojawial przy tablicach. A wiedzialem ze jakos da sie to zmienic - tak jest wygodniej. register_globals on pomoglo :-)
Chewolf
Cytat
m5910: twoje rozwiązanie b. dobre biggrin.gif działa wszędzie, na każdym serwerze - ale za to moje najprawdopodobniej szybsze smile.gif

Chyba żartujesz ...
rogrog
Cytat
Moze i jestem, ale problem sie pojawial przy tablicach. A wiedzialem ze jakos da sie to zmienic - tak jest wygodniej. register_globals on pomoglo :-)


jeżeli chodzi o używanie tablic wielowymiarowych:

[php:1:1d22c1eedd]<?php
echo $_GET[costam][cos]; //w czym problem?

/* a w stringu z cudzyslowami */

echo "Zagnieżdżona tablica: {$_GET[costam][cos]}";


?>[/php:1:1d22c1eedd]



Cytat
Chyba żartujesz ...


questionmark.gif nie rozumiem

przeciez:
1. jak jego serwer nie pozwala na .htaccess to mu sie nie uda ten drugi sposób
2. jak nie ma dostępu do php.ini to tez nic nie poradzi
3. extract moze zastosowac zawsze
Paul
Nie powinno sie uzywac register globlas on, bo obniza to bezpieczenstwo, a takze spowalnia skrypt...

Chcesz wiedziec wiecej wpisz w wyszukiwarke na forum: register AND globals...

Co do tablic mozesz uzyc [manual:eb0aa00a1b]serialize[/manual:eb0aa00a1b].

[php:1:eb0aa00a1b]<?php
echo $_GET['costam']['cos']; // jak juz to tak snitch.gif
?>[/php:1:eb0aa00a1b]

Nie jestem taki pewny czy to bedzie dzialac, bo jak wtedy bedzie ta zmienna w urlu wygladac?

jak jest tak: zmienna=test&zmienna2=test2

to bedzie

[php:1:eb0aa00a1b]<?php
$zmienna = $_GET['zmienna'];
$zmienna2 = $_GET['zmienna2'];
?>[/php:1:eb0aa00a1b]

a jak bedzie wygladac url w takim przypadku jak mowisz?
rogrog
biggrin.gif

też się nad tym zastanawiałem - ale to on napisal:

Cytat
Moze i jestem, ale problem sie pojawial przy tablicach.


więc mu tłumaczę jak to wyświetlić

jedynym możliwym rozwiązaniem jest serializacja



EDIT:

Poprawka, zdawało mi się, że jedynym możliwym rozwiązaniem jest serializacja, ale tak też działa:

Kod
http://localhost/test/tablica.php?zmienna[a]=zawartosc+zmiennej+a&zmienna[b]=zawartosc_be


plik tablica.php
[php:1:9060a3f966]<?php
print_r($_GET);
?>[/php:1:9060a3f966]

wyświetla

Kod
Array

(

    [zmienna] => Array

        (

            [a] => zawartosc zmiennej a

            [b] => zawartosc_be

        )



)


tak samo zresztą działa to przy metodzie POST
Paul
Dobrze wiedziec smile.gif Ale mysle, ze i tak latwiej jest zrobic serialize smile.gif

Nie spotkalem sie chyba z czyms takim smile.gif Albo nie zwrocilem uwagi.
rogrog
ja też się nie spotkałem z czymś takim jeśli chodzi o GET
ale jeśli chodzi o POST to często tego używam w formularzach
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.