Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> $z, $_GET["z"], $HTTP_GET_VARS["z"]
__phpion__
post
Post #1





Grupa: Zablokowani
Postów: 50
Pomógł: 0
Dołączył: 8.08.2004

Ostrzeżenie: (10%)
X----


Intryguje mnie jedno. Dlaczego spora wiekszosc programistow uzywa $_GET["zmienna"] skoro zadziala to tylko przy wylaczonych registerach_globalach. Czy nie lepiej uzywac $HTTP_GET_VARS["zmienna"]??? Wiem, ze to troche dluzszy zapis ale zadziala przy registerach_globalach zarowno on jak i off. Dlaczego wiec wiekszosc upiera sie za samym $_GET?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 13)
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


1. Krótszy zapis.
2. Po co używać czegoś co działa na register_globals włączonych skoro wyłączenie ich jest bezpieczniejsze.
Go to the top of the page
+Quote Post
hawk
post
Post #3





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


auto globals
Go to the top of the page
+Quote Post
rogrog
post
Post #4





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


Cytat(__phpion__ @ 2004-09-23 12:50:16)
$_GET["zmienna"] zadziala to tylko przy wylaczonych registerach_globalach.

$HTTP_GET_VARS["zmienna"] zadziala przy registerach_globalach zarowno on jak i off.

no nie do końca tak jak myślisz

$_GET działa zarówno przy register_globals on jak i off. zostało wprowadzone w php 4.1.0 . We wcześniejszych wersjach php jego odpowiednikiem było $HTTP_GET_VARS, które teraz jest przestarzałe.

$_GET różni się od $HTTP_GET_VARS tym, że jest zmienną superglobalną (dostępne również w funkcjach i metodach bez konieczności global )

register_globals extractuje zmienne z $_GET, ale nie wyłącza dostępności tej tablicy!


na koniec cytat z manuala
Cytat(manual)
HTTP GET variables: $_GET

Notatka: Introduced in 4.1.0. In earlier versions, use $HTTP_GET_VARS.

An associative array of variables passed to the current script via the HTTP GET method. Automatically global in any scope.

This is a 'superglobal', or automatic global, variable. This simply means that it is available in all scopes throughout a script. You don't need to do a global $_GET; to access it within functions or methods, as you do with $HTTP_GET_VARS.

$HTTP_GET_VARS contains the same initial information, but is not an autoglobal. (Note that HTTP_GET_VARS and $_GET are different variables and that php handles them as such)

If the register_globals directive is set, then these variables will also be made available in the global scope of the script; i.e., separate from the $_GET and $HTTP_GET_VARS arrays. For related information, see the security chapter titled Using Register Globals. These individual globals are not autoglobals.


--------------------
Go to the top of the page
+Quote Post
__phpion__
post
Post #5





Grupa: Zablokowani
Postów: 50
Pomógł: 0
Dołączył: 8.08.2004

Ostrzeżenie: (10%)
X----


Cytat(rogrog @ 2004-09-23 18:05:44)
Cytat(__phpion__ @ 2004-09-23 12:50:16)
$_GET["zmienna"] zadziala to tylko przy wylaczonych registerach_globalach.

$HTTP_GET_VARS["zmienna"] zadziala przy registerach_globalach zarowno on jak i off.

no nie do końca tak jak myślisz

$_GET działa zarówno przy register_globals on jak i off.

No nie jest tak jak piszesz. Przy wlaczonych r_g $_GET mi nie dziala. Wiec nie mow, ze dziala zarowno gdy sa on i off. Wiem, bo probowalem.
Go to the top of the page
+Quote Post
kszychu
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


To źle próbowałeś, bo działa. Przestań więc rozsiewać te wyssane z palca sensacje, tylko poczytaj w manualu!
I tym to optymistycznym akcentem proponuję zakończyć ten bezsensowny wątek.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
__phpion__
post
Post #7





Grupa: Zablokowani
Postów: 50
Pomógł: 0
Dołączył: 8.08.2004

Ostrzeżenie: (10%)
X----


Tak, czuje sie jak ufoludek teraz. Mam stare php z php Triad for Windows. I tam nie dziala!!! Zadziala, jezeli przelece najpierw extractem. Bez niego nie dziala. Ot co!
Go to the top of the page
+Quote Post
czachor
post
Post #8





Grupa: Zarejestrowani
Postów: 897
Pomógł: 40
Dołączył: 16.12.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


właśnie chodzi o to "stare" php.. pewnie wersja starsza niż 4.1.0... zaktualizuj:)


--------------------
how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free
Go to the top of the page
+Quote Post
MoD
post
Post #9





Grupa: Zarejestrowani
Postów: 193
Pomógł: 0
Dołączył: 14.09.2003
Skąd: Brodnica (koło Torunia)

Ostrzeżenie: (0%)
-----


Cytat(czachor @ 2004-09-24 15:29:53)
właśnie chodzi o to "stare" php.. pewnie wersja starsza niż 4.1.0... zaktualizuj:)

Najlepiej na 5.0.2, to powinno mu wszystko chodzić smile.gif


--------------------
Go to the top of the page
+Quote Post
__phpion__
post
Post #10





Grupa: Zablokowani
Postów: 50
Pomógł: 0
Dołączył: 8.08.2004

Ostrzeżenie: (10%)
X----


Ok, ale mi chodzi o to, ze NIE NA KAZDYM php zadziala $_GET - a wy mi wmawiacie ze na kazdym. Nie na kazdym.
Go to the top of the page
+Quote Post
kszychu
post
Post #11





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Cytat(__phpion__ @ 2004-09-24 19:40:03)
Ok, ale mi chodzi o to, ze NIE NA KAZDYM php zadziala $_GET - a wy mi wmawiacie ze na kazdym. Nie na kazdym.

No..... na php 2 albo 3 raczej nie zadziała..... Ale nie ma co sobie zawracać głowy wersjami, na których to nie zadziała.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
__phpion__
post
Post #12





Grupa: Zablokowani
Postów: 50
Pomógł: 0
Dołączył: 8.08.2004

Ostrzeżenie: (10%)
X----


Ai tu bym sie klocil bo wg mnie warto dolozyc te kilka znakow.
Go to the top of the page
+Quote Post
rogrog
post
Post #13





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


jeżeli masz wersję powyżej 4.1.0 to należy używać $_GET. Jest to zalecane przez twórców php, gdyż $HTTP_GET_VARS jest przestarzałe i w nowszych wersjach działa tylko dla zgodności historycznej, to znaczy aby działały skrypty napisane dla starszych wersji php. Poczytaj sobie w manualu.

Nie możemy mieć pewności, że w jakichś następnych wersjach php (np. wersji 6 tongue.gif o ile taka będzie) zmienne $HTTP_COSTAM_VARS nie zostaną wycofane


--------------------
Go to the top of the page
+Quote Post
__phpion__
post
Post #14





Grupa: Zablokowani
Postów: 50
Pomógł: 0
Dołączył: 8.08.2004

Ostrzeżenie: (10%)
X----


No chyba ze tak smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 16:49