只是一个简单的问题。我想将数据从Javascript发送到PHP脚本以将其存储在我的数据库中,然后以相同的方式将其恢复(脚本调用PHP函数,并使用JSON发回数据)。
我应该在javascript中使用哪个功能?我永远不需要只用PHP获取数据,所以可以使用escape(string);
然后unescape(encoded_string);
来显示吗?
感谢。
来自法国的问候;)
编辑:忘记提及:数据是来自用户输入的字符串(因此存在安全问题)
答案 0 :(得分:2)
使用encodeURIComponent()
在网址中传输。
function sendData(str)
{
var url = "http://myserver.com/upload?data="+encodeURIComponent(str);
ajax(url);
}
当数据发送到服务器时,服务器应自动取消对URL中发送的数据进行编码,因此您无需手动执行此操作。 (我不太熟悉PHP,但是,如果我错了,有人会纠正我。)你也不需要对发送到客户端的数据进行编码,因为它不是通过URL发送的。 / p>
请注意:
如果你escape()
数据,然后再unescape()
,那么用户输入的所有html标签,javascript和其他内容都将完全按原样恢复。因此,请务必在显示数据之前删除这些内容。