SQL注入是一个很严重的问题,一个有经验的入侵者可以利用它存取敏感数据,或者破坏你的数据库,如果你不注意这个问题,将会对你网站和客户造成很大的损失。
我曾经很多这方面的向导,但是他们都试图
复杂化这个问题。说实话,在php+mysql的开发环境中,最简单的办法就是:利用函数传递你的数据。通过转意可以操作字段的特定的字符,避免了sql注入,请看下面的例子:
// 不安全的写法.
$query =
"SELECT * FROM products WHERE
name='$productname'";
mysql_query($query);
// 安全的写法
$query =
sprintf("SELECT * FROM products WHERE
name='%s'",
mysql_real_escape_string($productname));
mysql_query($query);
此方法仅在在php中有效,还要记住并不转意%和_。
怎么样,这个方法够简单吧!
阅读(6279) | 评论(0) | 转发(1) |