95得票4回答
不连接到数据库的情况下,mysql_real_escape_string的替代方案是什么?

我希望能有一个函数,行为与mysql_real_escape_string相同,但不需要连接到数据库,因为有时我需要在没有数据库连接的情况下进行干测试。mysql_escape_string已被弃用,因此不被推荐使用。以下是我的一些发现: http://www.gamedev.net/com...

61得票4回答
mysql_escape_string与mysql_real_escape_string的区别

我知道从5.3版本开始,mysql_escape_string已不再使用,但是mysql_real_escape_string有什么实际的区别呢? 我认为mysql_real_escape_string除了需要第二个参数mysql资源外,与mysql_escape_string完全相同。 因此...

47得票6回答
为什么PDO比mysql_real_escape_string更适合转义MySQL查询/查询字符串?

我被告知使用PDO进行MySQL转义比使用mysql_real_escape_string更好。也许是因为我今天脑子不太灵光,或者因为我并不是一位天生的程序员,在PHP方面仍然处于新手阶段,但在查看了PHP手册并阅读了PDO条目之后,我仍然不清楚PDO实际上是什么以及为什么它比使用mysql_...

17得票3回答
如果我绑定参数,是否需要使用mysql_real_escape_string函数?

我有以下代码:function dbPublish($status) { global $dbcon, $dbtable; if(isset($_GET['itemId'])) { $sqlQuery = 'UPDATE ' . $dbtable . ' SET active = ...

17得票3回答
PHP的mysql_real_escape_string() -> stripslashes()函数会导致多个反斜杠。

我在使用PHP/MySQL转义和剥离字符串时遇到了问题——总是有多余的反斜杠。 我们以以下字符串为例: <span style="text-decoration:underline;">underline</span> 当将一个字符串添加到数据库中时,我会使...

13得票9回答
mysql_real_escape_string()在MySQL中保留反斜杠

我刚刚换了一个新的托管公司,现在每当一个字符串被转义时:mysql_real_escape_string($str); 反斜杠在数据库中保留。这是我第一次见到这种情况,所以我的脚本都没有使用。stripslashes() 这是在运行php 5.2.6 fastcgi的lighttpd 1.4服...

13得票9回答
解码mysql_real_escape_string()以输出HTML

我正在尝试保护自己免受SQL注入攻击,并使用以下代码:mysql_real_escape_string($string); 发布HTML时,它看起来大致如下:<span class="\"className\""> <p class="\&...

12得票6回答
我应该使用mysqli_real_escape_string()还是mysql_real_escape_string()来处理表单数据?

可能是重复问题: mysql_escape_string VS mysql_real_escape_string 我需要把用户在表单中输入的 company_name 存储到我的MySQL数据库中。 当我使用$company = mysqli_real_escape_stri...

12得票2回答
mysql_real_escape_string存在哪些缺陷?

我在这里看到一些人说,使用 mysql_real_escape_string 连接查询语句不能完全保护你免受 SQL 注入攻击。 然而,我还没有见过一个示例能说明有哪种输入会绕过 mysql_real_escape_string 的保护。大多数示例都忘记了 mysql_query 仅限于一个...

12得票2回答
mysql_real_escape_string是否容易受到无效UTF-8字符的攻击,例如过长的UTF-8或格式不正确的UTF-8序列?

假设我已经按照以下方式设置了我的数据库以使用UTF-8(在MySQL中使用完整的4MB版本)mysql_query("SET CHARACTER SET utf8mb4"); mysql_query("SET NAMES utf8mb4"); 在将字符串放入 SQL 之前,我使用 mysql_...