如何防止使用动态表名进行 SQL 注入?
2022-08-30 20:32:21
我和一位高声望的PHP家伙进行了这样的讨论:
PDO在这里没有用处。以及mysql_real_escape_string。质量极差。
这当然很酷,但老实说,我不知道建议使用或PDO来修复此代码有什么问题:mysql_real_escape_string
<script type="text/javascript">
var layer;
window.location.href = "example3.php?layer="+ layer;
<?php
//Make a MySQL connection
$query = "SELECT Category, COUNT(BUSNAME)
FROM ".$_GET['layer']." GROUP BY Category";
$result = mysql_query($query) or die(mysql_error());
进入这个
$layer = mysql_real_escape_string($_GET['layer']);
$query = "SELECT Category, COUNT(BUSNAME)
FROM `".$layer."` GROUP BY Category";
,考虑到 JavaScript 代码在客户端发送。