问题标签 [addslashes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
259 浏览

php - 使用php和MySql处理单引号和双引号插入问题的简单有效方法是什么

我主要使用Php 5.4+ 和 MySql 5.5+ 版本。我在所有项目中都使用Codeigniter

我面临的问题是

有时(在某些生产服务器上)当 POST 变量包含 ' 或

虽然 php 和 CI 有一个很好的工具来处理这些带有addlashesmysql_escape_sequence等的字符串

  1. 为用户发布的每个可能的变量检查这些条件并不容易

  2. 每次我们必须使用addslashes Ex: It\'s 并且在给出输出时我们必须再次应用stripslashes 来输出It's。但是对于较大的值很难处理。

  3. 由于数据库将数据保存为它,因此很难搜索这些字符串。

经过几天的挣扎,我发现使用utf8mb4_general_ci优于utf8

因此,我确保 CI 的 Database.php 具有以下内容

我还将各个列的数据类型更改为“ LONGTEXT ”,并将其排序规则更改为“ utf8mb4_general_ci

令我惊讶的是,他们为一些服务器工作。

但仍然在某些服务器上,我发现了同样的问题。即使我确保服务器配置与那些工作服务器匹配,这也有点令人沮丧。

所有 php 和 mysql 开发人员如何使用此场景?你采取了哪些预防措施?

请推荐!!

0 投票
3 回答
1441 浏览

php - 我应该在 GET 和 POST 请求中转义字符吗?

我刚刚读到 PHP 会自行转义传入的 GET 和 POST 请求一段时间。双重转义没有好处。我应该完全摆脱字符串吗?

例如,我处理这样一个简单的输入:

后来,当保存并从数据库中检索时,我用最后一个值填充输入,例如:

当有人在字段中输入引号时,它会返回类似这样的内容,这会破坏表单:

0 投票
1 回答
1447 浏览

php - 绕过 htmlspecialchars(addslashes(input)) 进行 HTML/JavaScript 注入

假设一些 PHP 代码回显了通过首先应用addslashes()然后再应用htmlspecialchars()到 HTML 文档来清理的输入。我听说这是一种不安全的方法,但不知道为什么。

任何关于可以将哪种格式应用于危险输入(例如脚本标签中的 JavaScript)以绕过这两个函数强加的安全措施的任何建议都将不胜感激。

0 投票
1 回答
1707 浏览

url-encoding - facebook共享链接的PHP转义引号和urlencode

我使用我网站上的 Facebook 共享链接在 Facebook 上发布文章。

对于某些链接,它有效,而对于其他链接,则无效。通过链接传递的标题和文本是法语(很多引号和特殊字符),处理链接的页面是 UTF8。

我成功地使所有 FB 链接工作,只需在对内容进行 urlencode 并从中创建链接之前使用“mysql_real_escape_string”。

为什么是“mysql_real_escape_string”?

这是一个测试,因为“htmlentities”、“htmlspecialchars”和“addslashes”从未起作用。明显的缺点是“mysql_real_escape_string”函数与那里无关,因为它与数据库无关。事实上,我收到一条错误消息,告诉我这个功能“被用户拒绝......”。

无论如何,我不打算使用此功能,但奇怪的是它使 Facebook 共享链接在 100% 的时间内有效,而“addslashes”却没有。我认为 addlashes 是“mysql_real_escape_string”的纯 PHP 版本,但它有一些不同,否则,它应该可以正常工作,但事实并非如此。

我的问题有任何纯 PHP 替代解决方案吗?

0 投票
1 回答
84 浏览

php - 我的服务器自动添加斜杠

我的服务器添加slashescookie value. 请帮我解决这个问题。

current cookie value是这样的,

但我希望它是这样的,

0 投票
1 回答
65 浏览

php - 在多引号变量中提取字符串

我有一个带有多个单引号的变量,并想提取其中的一个字符串。

我的代码是:

$image['src'] 包含这个字符串:

我认为一切都会是正确的,但$image['src']返回null。addlashes方法工作正常并返回

我没有在这里找到问题,我错过了什么吗?

=====更新======

整个代码:

0 投票
1 回答
2119 浏览

php - PHP's addslashes() not working for MySQL insert

I'm writing an import script in PHP to bring tables from SQL Server into MySQL, and I'm wrapping all char/varchar values in single-quotes for insertion. This works fine until the script encounters a value that has a single-quote in it. The obvious solution is to use addslashes(), but that isn't working for me. I also tried htmlspecialchars() as well as mysqli_real_escape_string, but neither worked. I've even tried removing the offending character altogether, using str_replace("'", "", $value) with no success. Finally, I tried wrapping the values in double- instead of single-quotes, but that gave me the same error upon encountering a row where the value's double-quotes could not be escaped.

Until the point of error, the script successfully inserts multiple chunks of 1,000 rows each, so I know the INSERT statement isn't formatted incorrectly. I logged the whole query and confirmed single-quotes aren't being escaped, although I can run an INSERT manually with just the offending row and a backslash included where necessary.

I'm stumped here. Are there any troubleshooting tips I've missed?

I have checked for duplicate or similar questions, but I'm not finding anything applicable to my situation that I haven't tried already. If I've overlooked a previous answer to this, please let me know.

Here's the code:

0 投票
0 回答
21 浏览

php - 不能在 PHP SQL Server ODBC 上使用添加斜杠

编辑我正在使用 MS SQL,我查询到 MySQL,然后将其插入到 MS SQL

我编写了一个脚本,它将从数据库中查询数据并将其上传到另一个数据库。所以脚本是这样的

那么这个

然后我有一些错误

这可能是未转义的字符串,但我已经有了。当我尝试回显查询时:

看起来 O'Nielll 没有转义,或者我的报价有问题?如何解决这个问题?谢谢

0 投票
1 回答
5673 浏览

php - 升级 PHP - 需要删除 get_magic_quotes_gpc

我们正在从 php 5.3 升级到 5.4,它不向后兼容 'get_magic_quotes_gpc'。我知道代码仍然可以工作,但每次都带回一个 FALSE。

但是,我认为是时候从我们的代码中清除它了。

这是一个典型的例子:

我一直在研究如何解决这个问题,这就是我想出的:

我在这里有点过头了。我知道这一切都与 SQL 注入等有关。我的解决方案是合理/可接受的吗?

提前致谢。

<<<< 编辑 - 附加信息 >>>>

感谢您的回复。实际上,大约 18 个月前,我们进行了一系列转换为 PDO(主要是由于关于 stackoverflow 的这种类型的建议 :)

所以,我可能有一些多余的、毫无意义的代码。这是我在上面发布的从 URL 获取变量的代码下面发生的事情的全貌。

您会看到,曾经存在的 (get_magic_quuotes_gpc) 现在被注释掉并被 (addslashes) 取代。但是该变量被传递给 PDO 查询。

我可以去掉前 4-5 行代码中的所有东西,然后让它变成这样:

0 投票
2 回答
523 浏览

jsp - 我如何在 JSP 中使用替换函数来转义单引号

我只是想问一下如何在 JSP 中使用 REPLACE 函数来转义单引号,如 PHP 中的 addlashes()

我的代码是

谢谢