PHP程序员最容易出现的错误总结_PHP教程
程序员文章站
2024-02-03 17:10:22
...
1.不转意html entities
一个基本的常识:所有不可信任的输入(特别是用户从form中提交的数据) ,输出之前都要转意。
echo $_GET['usename'] ;
这个例子有可能输出:
这是一个明显的安全隐患,除非你保证你的用户都正确的输入。
如何修复 :
我们需要将"","and" 等转换成正确的HTML表示(', and "),函数htmlspecialchars 和 htmlentities()正是干这个活的。
正确的方法:
echo htmlspecialchars($_GET['username'], ENT_QUOTES);
2. 不转意SQL输入
我曾经在一篇文章中最简单的防止sql注入的方法(php+mysql中)讨论过这个问题并给出了一个简单的方法 。有人对我说,他们已经在php.ini中将magic_quotes设置为On,所以不必担心这个问题,但是不是所有的输入都是从$_GET, $_POST或 $_COOKIE中的得到的!
如何修复:
和在最简单的防止sql注入的方法(php+mysql中)中一样我还是推荐使用mysql_real_escape_string()函数
正确做法:
- php
- $sql = "UPDATE users SET
上一篇: C++贪心算法实现活动安排问题
下一篇: 极速体验docker容器健康
推荐阅读
-
PHP程序员最容易出现的错误总结_PHP教程
-
PHP Date()出现错误的具体解决办法_PHP教程
-
dedeCMS上传图片出现UPLOAD FILETYPE NOT ALLOW错误的解决办法_PHP教程
-
PHP程序员最常犯的11个MySQL错误,php程序员mysql_PHP教程
-
警惕 PHP程序员最易犯10种错误_PHP教程
-
PHP程序员常犯的11个错误_PHP教程
-
php注释在php关闭标签环境中容易出现的错误
-
PHP程序员最常犯的11个MySQL错误,php程序员mysql_PHP教程
-
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法,imagick_PHP教程
-
phpExcel导出大量数据出现内存溢出错误的解决方法_PHP教程