AJAX无法正确地在另一页上工作

时间:2014-01-18 09:27:41

标签: javascript php jquery mysql ajax

我正在一个社交网站上工作,用户帖子显示在主页上。他们可以被喜欢和评论。如果喜欢帖子, 它通过AJAX更新 like table ,并将计数加1。

AJAX代码:

$(".mlike").click(function () {
        $(".murconform").submit(function(e){
            return false;
        });
        var $this=$(this);
        var post_id = $(this).val();
        var user_id = $(".user_id").text();
        alert('Post: '+post_id +' User: '+user_id);
        var request = $.ajax({
          url: "likes.php",
          type: "POST",
          data: { post : post_id , user : user_id },
          dataType: "html"
        });
        request.done(function( msg ) {    
            $this.prev('.likecount').html( msg ); 
        });
});

home.php页面中,我有一些PHP变量($ userID,$ userName),它们是从MySQL获取的数据,它们都可以正常工作但是它们都可以 不能使用user.php中的变量($ seenUserID,$ seenUserName)。在user.php中,只有与个人资料相关的帖子 已查看已获取,但当您按下“赞”按钮并尝试对任何帖子发表评论时,它会显示未定义的变量; $viewedUserID, $viewedUserName。还有这些 变量是从user.php页面的开头定义的。

我一直在考虑可能的原因是什么,并且还认为AJAX被假定对点击的效果有影​​响 按钮。

注意:警报工作正常。

提前致谢。

1 个答案:

答案 0 :(得分:0)

打算写评论,但我想答案会更清楚:

<强>的Ajax

How does AJAX work?

我认为你对阿贾克斯的工作感到困惑。问题是Ajax实际上只是前端(JS / HTML)和后端(PHP / Rails等)之间的连接器

您的声明“Ajax没有更新MYSQL”让我相信您依靠Ajax来更新您的表。它不会

您的表格将使用PHP进行更新,这就是为什么大多数评论都集中在PHP&amp;不是JS

<强> PHP

您的Ajax需要将正确的数据发送到PHP,但是这是您的服务器端脚本的工作,将其全部排序,发送一个有价值的响应

你的JS看起来会运行良好,但我认为你的问题将在你的后端。如果您使用PHP更新问题,您将获得更清晰的答案!