php - 转义特殊字符

标签 php javascript

只是一个简单的问题。我想将数据从 Javascript 发送到 PHP 脚本以将其存储在我的数据库中,然后以相同的方式将其返回(脚本调用 PHP 函数,并使用 JSON 发送回数据)。

我应该在 JavaScript 中使用哪个函数?我永远不需要仅使用 PHP 获取数据,那么使用 escape(string); 然后使用 unescape(encoded_string); 来显示可以吗?

谢谢。
来自法国的问候;)

编辑:忘记提及:数据是来自用户输入的字符串(因此存在安全问题)

最佳答案

使用encodeURIComponent()在url中进行传输。

function sendData(str)
{
  var url = "http://myserver.com/upload?data="+encodeURIComponent(str);
  ajax(url);
}

当数据发送到服务器时,服务器应自动对 URL 中发送的数据进行取消编码,因此您无需手动执行此操作。 (不过,我对 PHP 不太熟悉,如果我错了,有人会纠正我。)您也不需要对发送到客户端的数据进行编码,因为它不是通过 URL 发送的。

请注意:

如果您escape()数据,然后unescape()它,所有html标签,javascript和用户输入的其他内容将完全恢复原样是。因此,请务必在显示数据之前删除这些内容。

另请参阅:http://xkr.us/articles/javascript/encode-compare/

关于php - 转义特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3513100/

相关文章:

php - 在 windows 7 64 位上带有 php 的 MongoDb

php - mPdf 中的图像未在服务器中显示,但在本地主机中运行良好

javascript - 我如何知道 `AnalyserNode` 的 FFT 分析数据中哪一个对应于哪个频率?

javascript - 从 url 中删除 anchor - 将字符串添加到 url - 并再次在末尾附加 anchor

javascript - 防止在文本字段输入中键入,即使字段未被禁用/只读

javascript - 从 jscript 执行 php url

php - 当多次调用外部函数时,php 中的嵌套函数会抛出异常

php - PHP 中基于 Ajax 的个人消息传递系统

javascript - 根据 slider 内容更改多个元素内容/背景

javascript - javascript 中的lastChild(或lastElementChild)未定义