下面的代码中 $photo 为什么没有经过$_POST取值便可以直接使用了?而象$id之类的要经过$_POST取值后才可以使用?
(这段代码是一段 处理另一个注册页面传来数据 的代码,在另一个注册页面中有如下对应代码: <input type= "file " name= "photo " size= '25 '> )
<?
// 取得网页的参数
$id=$_POST[ 'id '];
$name=$_POST[ 'name '];
$password=$_POST[ 'password '];
...
if ($photo <> " "){
$fp=fopen($photo, "r ");
$data=addslashes(fread($fp,filesize($photo)));
}
$password=md5($password);
$sql= "insert into member (id, name, password, sex, email, oicq, homepage, city, address, zip, tel, edu, introduction, interest, birthday, photo, regtime, regip) values( '$id ', '$name ', '$password ', '$sex ', '$email ', '$oicq ', '$homepage ', '$city ', '$address ', '$zip ', '$tel ', '$edu ', '$introduction ', '$interest ', '$birthday ', '$data ', '$now ', '$ip ') ";
...
------解决方案--------------------
估计你的php.ini 里register_globals 状态为on吧?
------解决方案--------------------
register_globals 状态为on
photo他忘记用$_POST取值了
------解决方案--------------------
$photo 是沿用的以前的规则,以前的PHP可以不用$_POST 而直接取值即可。
$XXX也是可以直接使用的。