字符串在ajax帖子后被转义

时间:2015-04-21 06:03:23

标签: php jquery ajax

PHP版本是 5.6.2

发送JS对象时,为什么字符串最终会在PHP中转义?

这是我的JS代码:

$.ajax({
   url: url,
   type: 'POST',
   data: {obj: obj},
   success: function(data) {},
   error: function(req, status, error){},
   timeout: 20000
});

所有 st'rin'gs 最终都像PHP中的 st \'rin \'gs 一样。当然我可以 stripslashes 但是这样做的正确方法是什么?

解决方案适用于同一情况下的所有人,他们检查并调试过但仍无法找到解决方案:如果您使用的是Wordpress,那就是原因。 WP自动转义所有$ _POST变量,因为这个AJAX是针对wp_ajax.php发布的,所以它被转义了。 我采取了简单的方法并做了:

stripslashes_deep($_POST['obj'])

1 个答案:

答案 0 :(得分:0)

您必须先检查您的魔术引号配置并进行适当的更改,请考虑阅读以下帖子:Why are $_POST variables getting escaped in PHP?