因此,当我将数据保存到数据库时,PHP将在单引号或双引号上添加\。那很好。如何在Javascript中删除斜线(json)?任何JQuery插件?
但是,当数据传回到客户端使用json_encode();像麦当劳这样的文本在数据库中存储为麦当劳,但是一旦从PHP返回到js,它将被编码为麦当劳
因为我使用jQuery,有没有任何插件可以轻松做到这一点?或者我应该用什么函数来正确地去掉斜杠?显然,如果有像\\\\s
这样的情况,函数应该返回\s
。 :)
对不起。我想我让我的问题太复杂了。怎么样我使其更简单...
如果我有一个JavaScript变量:
var abc = "McDonald\'s";
var bcd = "I need a slash \\ ";
var cde = "save the double quote \"";
我怎么能剥去\”?我应该使用哪种正则表达式?
我有点担心了很多这里的答案。我的PHP安全知识有点过时,所以我没有真正有资格在这里给出一个好的答案,但是如果你关闭了魔术引号,用一个更好的**转义系统替换它是非常重要的。你的目标应该是防止SQL注入和跨站脚本攻击。我通常会使用'mysql_real_escape_string($ user_input)'进入数据库,'htmlentities($ db_output)'使用客户端 - 但这可能不会100%安全。希望有人能提供更好的建议。 – Andrew 2010-10-25 02:09:31
你在JS中使用什么来解析JSON?无论你使用何种方法,如果它正确地生成了('json_encode'将会这样做)。 – staticsan 2010-10-25 02:41:58
@Andrew该建议仍然健全,但通常你想用'htmlspecialchars()'编码到一个视图。这就够了。 – alex 2010-10-25 08:46:27