只是一个简单的问题。我想将数据从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/

10-12 00:09
查看更多