SQl注入的危害非常的大,下面这个示例就是一个典型的注入点,代码未对用户所提交的数据进行合法性检查。
1 2 3 |
$unsafe_variable = $_POST['user_input']; mysql_query("INSERT INTO `table` (`column`) VALUES ('$unsafe_variable')"); |
用户可通过提交类似 value'); DROP TABLE table;--
这样的代码,运行时将执行下面的非法代码
1 |
INSERT INTO `table` (`column`) VALUES('value'); DROP TABLE table;--') |
对数据安全性以及有效性破坏非常的大,在开发过程中一定要对用户提交信息进行合法性检查,针对PDO和MySQLi两种不同的数据库连接方式有如下两种处理办法。 继续阅读“如何在PHP防止数据库SQL注入”