PHP中,使用mysql数据库,Linux系统。
在使用搜索功能时,直接执行这样的语句安全吗?
$keyword=$_POST["keyword"];
$sql="select * from abc where a_name like '%$keyword%'";
$rs=mysql_query($sql);
.....如果不安全,应该怎么过滤?谢谢
在使用搜索功能时,直接执行这样的语句安全吗?
$keyword=$_POST["keyword"];
$sql="select * from abc where a_name like '%$keyword%'";
$rs=mysql_query($sql);
.....如果不安全,应该怎么过滤?谢谢
解决方案 »
- 请教正则过滤UBB代码~
- 求助!PHP执行的相关问题!
- 首页的重定向
- PHP 全局变量
- 这个简单的PHP上传文件代码,如何改进这两个功能啊?
- apache2 建的网站 PHP验证图片无法显示的疑难
- Fatal error: Call to undefined function date_format()
- 各位PHP高手!请教有没有比较好的基于PHP的产品库实现?类似pchome.net的
- 愚昧的问题(因为我是新手,嘻嘻)
- php Controller方法最后怎么跳转到指定的路径?
- 编码用gb2312(ANSI)还是utf-8 大家都来讨论下 自己在用哪种编码
- phpMyAdmin 登录后 页面空白
$keyword = ereg_replace('([\'%;])', '\\\1', $keyword);
比如将一些危险字符进行转义,如果确实需要like 这些危险字符那就要另想办法。
总之先看一下数据注入之类的文章。
$keyword=mysql_real_escape_string($_POST["keyword"]);//看手册最好,这些方面的知识楼主搜索一下,SQL注入。
$sql="select * from abc where a_name like '%$keyword%'";
$rs=mysql_query($sql);
有兴趣的话可看这个贴