Home > Backend Development > PHP Tutorial > 将PHP从4.0.6升到4.2.1的注意事项_PHP

将PHP从4.0.6升到4.2.1的注意事项_PHP

WBOY
Release: 2016-06-01 12:38:18
Original
755 people have browsed it

以前做了个购物网站的PHP程序,但前不久将PHP从4.0.6升到4.2.0后再一运行那程序就面目全非了(惨相啊.....:)
不过最终问题还是解决了,最近有人也碰到了相同的问题来问我,所以我干脆写出来吧。

我碰到的出错主要问题在PHP.INI中的配置参数register_globals=off

此项设off后PHP的程序就不会自动从Cookie,Session及页面地址"?"号后的参数中得到变量的值了,也不会自动接收form表单所传的值,之所以默认这样做是为了防止变量中毒(variable poisoning),PHP以前版本这一项不是默认off的所以没出问题。

解决方法是:

echo $HTTP_COOKIE_VARS['variable'];//得到cookie的值
echo $HTTP_SESSION_VARS['variable'];//得到session的值
echo $HTTP_POST_VARS['variable'];//得到表单所传的值-----相应表单框名
echo $HTTP_GET_VARS['variable'];//得到"xxx.php?variable=123456"中问号后面所跟的变量值
echo $HTTP_SERVER_VARS['REMOTE_ADDR'];//得到对方IP地址
echo $HTTP_POST_FILES['];//取得用表单传过来的文件
?>

希望大家在今后写代码时尽量用如上的完整写法(等出错后再改代码那可是劳民伤财啊),因为上面的那种写法无论是在register_globals设为on时还是off时都不会出错,且安全性更高。

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template