Php JQuery$\u POST无法与WordPress一起使用

Php JQuery$\u POST无法与WordPress一起使用,php,jquery,ajax,wordpress,Php,Jquery,Ajax,Wordpress,这是我第一次使用JQuery,在这一点上我已经坚持了好几个小时。 我试着把喜欢和不喜欢按钮做成你在youtube视频下看到的那样。在记录了click on like按钮之后,我使用$\u POST方法在数据库的likes表中添加一个新行。但有点不对劲。我试图跟踪这个问题,我知道由于某种原因,$\u POST方法无法运行“backgound.php”文件下面是我的代码 <script type="text/javascript"> var user_liked = '<

这是我第一次使用JQuery,在这一点上我已经坚持了好几个小时。

我试着把喜欢和不喜欢按钮做成你在youtube视频下看到的那样。在记录了click on like按钮之后,我使用$\u POST方法在数据库的likes表中添加一个新行。但有点不对劲。我试图跟踪这个问题,我知道由于某种原因,$\u POST方法无法运行“backgound.php”文件

下面是我的代码

<script  type="text/javascript">

    var user_liked = '<?php echo $user_liked; ?>';
    $(document).ready(function(){
      $("#li").click(function(){

        if(user_liked == '0') {
          $.post('<?php get_sport_you("backgound.php"); ?>' , {handle_like: 'increment'});
          user_liked = 1;
        } else {
          $.post('<?php get_sport_you("backgound.php"); ?>' , {handle_like: 'decrement'});
          user_liked = 0;
        }

      });
    });

  </script>

var user_=“”;
$(文档).ready(函数(){
$(“#li”)。单击(函数(){
如果(用户=0){
$.post(“”,{handle_like:'increment'});
用户_=1;
}否则{
$.post(“”,{handle_like:'decrement'});
用户_=0;
}
});
});
这是backgound.php

<?php

if($_SERVER['REQUEST_METHOD'] == 'POST') {

  if($_POST['handle_like'] === "increment") {
    submit_increment("user_likes", the_ID(), $_SESSION['u_id']);

  } else if($_POST['handle_like'] === "decrement"){
    submit_decrement("user_likes", the_ID(), $_SESSION['u_id']);
  }
}
 ?>


谢谢大家的帮助。我费了好大劲才解决了这个问题。好的,实际上这是WordPress的问题,而不是jquery的问题

$.post(“”,{handle_like:'decrement'})

问题在于上述陈述,它解释了这一点

$.post('localhost/wordpress/wp content/themes/sportyou/backgound.php',{handle_like:'decrement'})

在WordPress中,你不能直接调用PHP文件,你必须先创建一个页面模板,然后再从中创建一个页面。然后你可以向它发送post请求。这背后的原因是,如果我直接调用PHP文件,许多预定义的WordPress函数将无法工作。e、 g.添加_action(),global$wpdb,您将得到各种各样的错误。这些函数和对象无法工作,这就是为什么我无法使用$wpdb对象将数据插入表中。下面是正确的版本


$.post('http://localhost/mysite/background/“,{handle_like:'减量'})

$。POST
-检查控制台。请求可能被欺骗,请使用正确的验证。@Script47会话变量不容易被欺骗
$\u会话['u\u id']
应该在用户登录时设置。@Script47为什么这很重要?用户决定他们是否喜欢某样东西,如果他们欺骗它为什么重要?@user8114666控制台中有错误吗?您是否检查了网络选项卡以查看是否发送了AJAX请求?