是你的设置问题。在php.ini文件中,把你的register_globals = Off改成register_globals = On就行了。或者把程序改成这样也行:
page1.php
<?php
$a="nihao";
$b="<a href=../page2.php?name=".$a.">next page</a>";
echo $b;
?>page2.php
<?php
echo $_GET['name'];
?>
page1.php
<?php
$a="nihao";
$b="<a href=../page2.php?name=".$a.">next page</a>";
echo $b;
?>page2.php
<?php
echo $_GET['name'];
?>
/**
* This library grabs the names and values of the variables sent or posted to a
* script in the '$HTTP_*_VARS' arrays and sets simple globals variables from
* them
*
* loic1 - 2001/25/11: use the new globals arrays defined with php 4.1+
*/
if (!defined('PMA_GRAB_GLOBALS_INCLUDED')) {
define('PMA_GRAB_GLOBALS_INCLUDED', 1); if (!empty($_GET)) {
extract($_GET);
} else if (!empty($HTTP_GET_VARS)) {
extract($HTTP_GET_VARS);
} // end if
if (!empty($HTTP_ENV_VARS)) {
while(list($name,$value) = each($HTTP_ENV_VARS)){
$$name = $value;
}
}
if (!empty($HTTP_SERVER_VARS)) {
while(list($name,$value) = each($HTTP_SERVER_VARS)){
$$name = $value;
}
} if (!empty($_POST)) {
extract($_POST);
} else if (!empty($HTTP_POST_VARS)) {
extract($HTTP_POST_VARS);
} // end if if (!empty($_FILES)) {
while (list($name, $value) = each($_FILES)) {
$$name = $value['tmp_name'];
}
} else if (!empty($HTTP_POST_FILES)) {
while (list($name, $value) = each($HTTP_POST_FILES)) {
$$name = $value['tmp_name'];
}
} // end if} // $__PMA_GRAB_GLOBALS_LIB__假如这段脚本就不用改配置了!