<body>
<div> <?= $_POST['msg'] ?> </div>
<form id="frm" method="post">
<input type="hidden" name='msg' value='{"field0": "Im a string", "field1": 84, "field3": "so am I"}' />
<input type="submit" value="test" />
</form>
</body>
当表单发布时,在div标记之间会显示以下字符串。为什么将转义字符添加到隐藏输入的值
{\ “field0 \”:\ “我是个字符串\”, \ “字段1 \”:84 \ “字段3 \”:\ “所以我 I \”}
为什么要添加转义字符? 它们是由PHP服务器还是Web客户端添加的? 我可以做任何事情来防止这种情况发生吗?
有人已经提到了PHP函数stripslashes。我现在使用它,但我想摆脱所有的斜线。
我不认为Dojo是做什么时髦,因为frm.submit()是JavaScript request.value ==味精之前提交表单,以纯OLE。但是,为stripslashes()+1。我会使用它,直到我弄清楚发生了什么。 – 2009-06-24 17:28:56