解决方案
使用准备好的陈述。
在大多数情况下,准备好的声明会以安全的方式将您的查询与参数结合起来。
其他提示
$ _ GET ['site']是一个直接来自浏览器中URL的值,这意味着用户可以轻松地将此值更改为他们想要的任何值,您应该在发送之前检查/清理该值,实际上是所有值到数据库。
这样的事情将是一个开始,仍然可以使用更多的工作,并且有很多方法可以做到这一点,我会创建一个自定义函数/类来轻松地通过整个网站传递所有变量,这可以简单地重复这样的东西
$site = mysql_real_escape_string( $ _ GET ['site']是一个直接来自浏览器中URL的值,这意味着用户可以轻松地将此值更改为他们想要的任何值,您应该在发送之前检查/清理该值,实际上是所有值到数据库。
这样的事情将是一个开始,仍然可以使用更多的工作,并且有很多方法可以做到这一点,我会创建一个自定义函数/类来轻松地通过整个网站传递所有变量,这可以简单地重复这样的东西
<*>GET['site']);
$start_date = mysql_real_escape_string($start_date);
$end_date = mysql_real_escape_string($end_date);
get_stats = mysql_query("SELECT * FROM visitors WHERE site='$site' AND date >= '$start_date' AND date <= '$end_date' ");
mysql_real_escape_string 是最基本的这里最简单的安全形式。
不隶属于 StackOverflow