在PHP4.2以后的版本中register_global默认为off
若想取得从另一页面提交的变量:
方法一:在PHP.ini中找到register_global,并把它设置为on.
方法二:在接收网页最前面放上这个extract($_POST);extract($_GET);(注意extract($_SESSION)前必须要有Session_Start()).
方法三:一个一个读取变量$a=$_GET["a"];$b=$_POST["b"]等,这种方法虽然麻烦,但比较安全.
<font color="#000000"><br><font face="新宋体" color="#0000bb"><?PHP <br>Ob_Start</font><font face="新宋体"><font color="#007700">();<br></font><font color="#0000bb">Session_Start</font></font><font face="新宋体"><font color="#007700">();<br>Echo </font><font color="#dd0000">"<pre class="brush:php;toolbar:false;">"</pre></font></font><font face="新宋体"><font color="#007700">;<br>Echo </font><font color="#dd0000">"本页得到的_GET变量有:"</font></font><font face="新宋体"><font color="#007700">;<br></font><font color="#0000bb">Print_R</font><font color="#007700">(</font><font color="#0000bb">$_GET</font></font><font face="新宋体"><font color="#007700">);<br>Echo </font><font color="#dd0000">"本页得到的_POST变量有:"</font></font><font face="新宋体"><font color="#007700">;<br></font><font color="#0000bb">Print_R</font><font color="#007700">(</font><font color="#0000bb">$_POST</font></font><font face="新宋体"><font color="#007700">);<br>Echo </font><font color="#dd0000">"本页得到的_COOKIE变量有:"</font></font><font face="新宋体"><font color="#007700">;<br></font><font color="#0000bb">Print_R</font><font color="#007700">(</font><font color="#0000bb">$_COOKIE</font></font><font face="新宋体"><font color="#007700">);<br>Echo </font><font color="#dd0000">"本页得到的_SESSION变量有:"</font></font><font face="新宋体"><font color="#007700">;<br></font><font color="#0000bb">Print_R</font><font color="#007700">(</font><font color="#0000bb">$_SESSION</font></font><font face="新宋体"><font color="#007700">);<br>Echo </font><font color="#dd0000">""</font></font><font face="新宋体" color="#007700">;<br></font><font face="新宋体" color="#0000bb">?><br></font></font><br>为什么我向另一网页传送变量时,只得到前半部分,以空格开头的则全部丢失
$Var="hello php";//修改为$Var=" hello php";试试得到什么结果$post= "receive.php?Name=".$Var;header("location:$post");?>
receive.php的内容:
;Echo "";Echo $_GET["Name"];Echo ""
?>
正确的方法是:
立即学习“PHP免费学习笔记(深入)”;
$Var="hello php";$post= "receive.php?Name=".urlencode($Var);header("location:$post");?>
在接收页面你不需要使用Urldecode(),变量会自动编码.
规范你的SQL语句
在表格,字段前面加上"`",这样就不会因为误用











