我正在使用像Facebook一样工作的社交网站。帖子显示在主页上。他们可以被喜欢和评论。 如果有人发帖,LIKE TABLE会通过AJAX更新,并将其相似计数加1。 likes.php
文件更新 LIKE TABLE并返回增加的值<span class = 'likeCount'>. $likeCount .</span>
,并将其添加到类似按钮。.htaccess页面重定向对AJAX响应有影响
这工作正常home.php
但不是在user.php
这是用户配置文件页面。 user.php
提取仅与特定用户相关的帖子。每当您尝试喜欢或评论user.php
页面的帖子时,都会收到PHP错误 。当我alert(msg);
它显示请求页面的整个HTML代码,user.php
与PHP错误,一些变量未定义。 URL实际上就是这样的http://localhost/mysite/user.php?userID=yax
,但它被重定向并被.htaccess重写为http://localhost/mysite/user/yax
。我想这是导致问题的原因,因为相同的AJAX在home.php中工作正常。
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);
});
});
的.htaccess代码:
RewriteEngine on
RewriteBase /mysite/user/
RewriteCond %{THE_REQUEST} /user\.php\?user=([^\s&]+) [NC]
RewriteRule^%1? [R=302,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ user.php?user=$1 [L]
这有很沮丧和停止我的工作在过去的三天。任何帮助将被适当赞赏。谢谢。
在用户页面上为您的ajax请求提供的firebug> network的任何屏幕截图? –
一般提示:如果您收到错误消息,请告诉我们它们是什么,然后显示代码。 –
@MarcB:AJAX返回请求页面的HTML。 – Yax