#23744 [Asn->Csd]: $_REQUEST no more includes $_GET variables?
| From: | iliaa@php.net | Date: | Wed, 21 May 2003 22:57:32 +0000 |
| Subject: | #23744 [Asn->Csd]: $_REQUEST no more includes $_GET variables? | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-40171@lists.php.net to get a copy of this message | ||
ID: 23744
Updated by: iliaa@php.net
Reported By: i dot thierack at iwt-promotion dot net
-Status: Assigned
+Status: Closed
Bug Type: URL related
Operating System: Debian 3.0
PHP Version: 4.3.2RC3
Assigned To: iliaa
New Comment:
This bug has been fixed in CVS.
In case this was a PHP problem, snapshots of the sources are packaged
every three hours; this change will be in the next snapshot. You can
grab the snapshot at http://snaps.php.net/.
In case this was a documentation problem, the fix will show up soon at
http://www.php.net/manual/.
In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites in short time.
Thank you for the report, and for helping us make PHP better.
Previous Comments:
------------------------------------------------------------------------
[2003-05-21 17:49:04] rasmus@php.net
This may very well be a "Won't Fix" but we will see what Ilia thinks.
This has traditionally not worked very reliably. PHP has always
expected to see valid variable names in the get and post key/value
pairs. For example, try putting a . (dot) in a variable name. You
will see it gets converted to an underscore. The idea here is that
anything in $_GET/$_POST/$_COOKIE can be extract()'ed directly into the
symbol table and you can't have variables called $123 and $.abc so
these variable names are technically not supported in our GPC arrays.
That doesn't mean you can't use them, you will just have to do a bit of
work yourself. In your case you would need to look at $QUERY_STRING
and parse that.
------------------------------------------------------------------------
[2003-05-21 17:38:37] michael dot mauch at gmx dot de
The problem appears only with numeric argument names:
test.php?123=45 =>
_REQUEST: Array
(
[0] => 45
)
_GET: Array
(
[123] => 45
)
test.php?a123=45 =>
_REQUEST: Array
(
[a123] => 45
)
_GET: Array
(
[a123] => 45
)
------------------------------------------------------------------------
[2003-05-21 16:59:06] sniper@php.net
This was broken by another fix related to $_REQUEST.
Assigned to Ilia who broke it. :)
------------------------------------------------------------------------
[2003-05-21 16:20:31] i dot thierack at iwt-promotion dot net
Hello,
following problem with 4.3.2RC3 (it works with 4.3.1)
Browser URL :
http://intraddms/fiatbearb/adr_index.php?1234567890
var_dump from $_REQUEST
array(2) { [0]=> string(1) "0" ["PHPSESSID"]=> string(32)
"3f8ee06297a919da9d84cd713473fe5d" }
if have a query like
if(!isset($_REQUEST["1234567890"]){ << BUG? it's alway true
initialize some variables
}
if i replace it with $_GET it works. Switch back to 4.3.1 it works also
with $_REQUEST
regards
Ingo Thierack
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=23744&edit=1