From:             support at ruishi dot info
Operating system: Linux SUSE
PHP version:      4.3.9
PHP Bug Type:     URL related
Bug description:  _GET bug with null last var persists

Description:
------------
The bug described earlier in http://bugs.php.net/bug.php?id=28221 by some
sir else still persists in PHP-4.3.9, Suse Linux. The problem is:

The request "page.php?var1=a&var2=b&var3=c" sets the $_GET array
correctly, but a slightly different request "page.php?var1=a&var2=b&var3="
with a null $var3 will make the whole $_GET array null!

A live demo can be found at:

Everything is fine with Link 1:
http://www.ruishi.info/forum/testwindnumeric.php?tid=123&a=1&b=2&c=3

Then $_GET becomes null is the last variable $c is null in Link 2:
http://www.ruishi.info/forum/testwindnumeric.php?tid=123&a=1&b=2&c=




Reproduce code:
---------------
$tid=<?=$_GET['tid']?><br>
<?php
require_once('./testglobal.php');
echo "$tid<br>";
echo $_GET['tid'];
echo "\$_GET=";
print_r($_GET);
echo "<br>";
if(!is_numeric($_GET['tid'])) echo('invalid id number');
?>

In testglobal.php, the related sections:

print_r($_GET);
echo "<br>";

unset($GLOBALS,$_ENV,$HTTP_ENV_VARS,$_REQUEST,$HTTP_POST_VARS,$HTTP_GET_VARS,$HTTP_POST_FILES,$HTTP_COOKIE_VARS);
$Is_Gmqgg=get_magic_quotes_gpc();
if(!$Is_Gmqgg){
        Add_S($_POST);
        Add_S($_GET);
        Add_S($_COOKIE);
}
print_r($_GET);
echo "<br>";
......

Expected result:
----------------
For Link 1, the result is correct.
For Link 2, the correct result should be:

Array ( [tid] => 123 [a] => 1 [b] => 2 [c] => 3 )

Actual result:
--------------
For Link 2, the actual incorrect result is:

Array ( )

-- 
Edit bug report at http://bugs.php.net/?id=30523&edit=1
-- 
Try a CVS snapshot (php4):   http://bugs.php.net/fix.php?id=30523&r=trysnapshot4
Try a CVS snapshot (php5.0): http://bugs.php.net/fix.php?id=30523&r=trysnapshot50
Try a CVS snapshot (php5.1): http://bugs.php.net/fix.php?id=30523&r=trysnapshot51
Fixed in CVS:                http://bugs.php.net/fix.php?id=30523&r=fixedcvs
Fixed in release:            http://bugs.php.net/fix.php?id=30523&r=alreadyfixed
Need backtrace:              http://bugs.php.net/fix.php?id=30523&r=needtrace
Need Reproduce Script:       http://bugs.php.net/fix.php?id=30523&r=needscript
Try newer version:           http://bugs.php.net/fix.php?id=30523&r=oldversion
Not developer issue:         http://bugs.php.net/fix.php?id=30523&r=support
Expected behavior:           http://bugs.php.net/fix.php?id=30523&r=notwrong
Not enough info:             http://bugs.php.net/fix.php?id=30523&r=notenoughinfo
Submitted twice:             http://bugs.php.net/fix.php?id=30523&r=submittedtwice
register_globals:            http://bugs.php.net/fix.php?id=30523&r=globals
PHP 3 support discontinued:  http://bugs.php.net/fix.php?id=30523&r=php3
Daylight Savings:            http://bugs.php.net/fix.php?id=30523&r=dst
IIS Stability:               http://bugs.php.net/fix.php?id=30523&r=isapi
Install GNU Sed:             http://bugs.php.net/fix.php?id=30523&r=gnused
Floating point limitations:  http://bugs.php.net/fix.php?id=30523&r=float
MySQL Configuration Error:   http://bugs.php.net/fix.php?id=30523&r=mysqlcfg

Reply via email to