2012-12-08 3 views
1

이전 질문에서 언급 한 내 getLikes 스크립트는 클리너 버전의 URL을 다시 쓸 때 전혀 작동하지 않습니다 ... 그 b/c 게시 요청입니까? 다른 모든 것은 사용자 프로필을 찾는 get 부분처럼 잘 작동합니다. 여기 은 mod_rewrite를하다 :mod_rewrite가 내 아약스 게시 스크립트를 엉망으로 만든 것처럼 보입니다.

RewriteEngine on 
RewriteRule ^profile/([^/\.]+)/?$ profile.php?p=$1 [L] 

여기 아약스이다 : 그것은 그 기본적으로 같은 버튼 ... 사용자가이 프로필을 좋아 여부를 반환하는 페이지로 다음 게시물 ID를 얻을 예정이다

public function likesScript($p){?> 
    <script> 

    //display list of people who like this 
    function getLikes(){ 
    $.ajax({ 
     type: "POST", 
     url: "likelist.php", 

     data: { p: "<?php echo $_GET['p']?>"} 
    }).success(function(res) { 

     $("#likedBy").html(res); 
     //console.log(res); 

     if($('li#<?PHP echo $_SESSION['userId']; ?>').length){ 
      $(".Like").hide(); 
      $(".UnLike").fadeIn(); 
     } else { 
      $(".UnLike").hide(); 
      $(".Like").fadeIn(); 
     } 
    }); 
} 
+0

AJAX 요청이 발생하는 동안 브라우저의 네트워크 콘솔을 확인하십시오. HTTP 응답 코드 란 무엇입니까? Th RewriteRule은'likelist.php'와 일치하지 않으므로 간섭해서는 안됩니다. –

답변

0

변경 에서 url: "/likelist.php"으로 변경하십시오.

절대 경로, 도메인 이름 뒤에있는 모든 URI를 사용하십시오.

http_URL = "http :" "//"호스트 [ ":"포트] [abs_path [ "?" query]]

을 처음이나 URI에 추가하면 http://example.com/과 거의 같습니다.

URL을 profile/name으로 바꿔서 명확하게 존재하지 않는 profile/name/likelist.php을 찾습니다.

관련 문제