【问题标题】:Is there any way to SQL inject in my code? [duplicate]有什么方法可以在我的代码中注入 SQL 吗? [复制]
【发布时间】:2013-07-20 14:30:42
【问题描述】:

我对sql注入不熟悉,我想知道我的脚本中是否有任何无懈可击的地方,如果有请指出并给我一些修复它的提示。

<?php
include("config.php");
?>

<?php
$desc = $_POST['desc'];
$desc = mysql_real_escape_string($desc);
$author = $_POST['author'];
$date = date("d/M/Y");
mysql_query("INSERT INTO `changelog`(`author`, `date`, `description`) VALUES ('{$author}','{$date}','$desc')") or die(mysql_error());
include("success.php");
?>

【问题讨论】:

标签: php sql code-injection


【解决方案1】:

是的,有。您完全依赖于已弃用的 mysql_real_escape_string。此外,您应该根据您期望的一系列输入构建一些您自己的逻辑测试。您可能想要使用 RegExp 或其他一些修剪功能,但不要仅仅依赖 mysql_real_escape_string

【讨论】:

    【解决方案2】:

    您应该编写一些逻辑来测试您期望的数据。

    您可以查看http://php.net/manual/en/security.database.sql-injection.php,了解有关防止 SQL 注入的更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-02
      • 2013-06-17
      • 2023-04-10
      • 2023-01-28
      • 1970-01-01
      • 2017-02-17
      • 1970-01-01
      相关资源
      最近更新 更多