2014-01-29 2 views
0

가장 간단한 질문은 죄송 합니다만 작동하지 않는 것 같습니다. 제가 AJAX로 정말 놀아 본 것은 이번이 처음입니다.codeigniter 컨트롤러를 실행하는 Ajax 링크

codeigniter에서 개발 중이며 클릭 할 때 컨트롤러가 실행됩니다. 사진 기능 : 로그인 한 사용자가 사진을 좋아하면 사진을 다시 리디렉션하고 약간 다른 버전을 표시합니다. 사용자가 사진을 좋아한다는 것을 보여주는 버튼의

<a href="<?php echo site_url('photo/like'); ?>/<?php echo $photos['id'];?>" class="uk-button <?php if ($liked == '1') : ?>uk-icon-heart uk-button-danger<?php else: ?>uk-icon-heart<?php endif; ?>" data-uk-tooltip title="<?php if ($liked == '1'):?>Likes<?php else:?>Like<?php endif; ?>"> <?php if ($like_count > '0') { echo $like_count; } ?></a> 

그것은 잘 작동하지만 난 다시 다음 유체 운동의 이상이 페이지를 탐색 대신이고 있도록 아약스 기능으로 대체하는 멋진 것이라고 생각.

도움을 주시면 감사하겠습니다.

답변

0
$(".uk-button").click(function(e) { 
    e.preventDefault(); 
    //Here you can add your ajax 
    $.ajax({ 
    url: site_url + 'photo/like', 
    data: { 
     liked : 1 
    }, 
    type: 'POST', 
    dataType: 'json', 
    async : false, 
    success: function(success_record) { 
     console.log(success_record,":success_record"); 
     //You might receive your like count from PHP here 
    } 
    }); 
}); 

성공 기록에는 PHP 레코드 값이 있습니다. 당신이 증가하거나 성공 기능의 감소 수가

+0

은 "이미지 이름"또는 "UID"또는 "현재와 같은 수를 원하는 매개 변수를 추가하려면 "당신은 해당 데이터를 json으로 해당 데이터 전달할 수 – Makrand

+0

감사 Makrand 나는 밖으로 솔루션을 시도하고있어 내가 정의되지 site_url지고 있어요. 또한 내 컨트롤러가 url로 전달 된 변수에서 사용자 정보를 가져옵니다. 이것은 컨트롤러 대신 POST 객체를 찾기 위해 다시 작성해야한다는 것을 의미합니까? – Tristan

+0

@Tristan codeigniter가 base_url 인 경우 사용할 수 있지만 헤더 스크립트 태그에 base_url을 정의해야합니다. "post"변수를 얻는 것 외에는 컨트롤러에서 큰 변경이 필요하지 않습니다. 죄송합니다. 지연 – Makrand

0

당신이 뭔가를 할 수있는 기준 자료 :

$(document).ready(function() 
{ 
    $('.likeLink').on('click', funciton() 
    { 
     var obj = $(this); 
     var id = obj.attr('id'); //anything you want to pass to update your like somewhere 

     $.ajax(
     { 
      type: 'POST', 
      url: 'YourFilePathWhereYouWillDoTheLike', 
      data: 
      { 
       id: id, 
      }, 
      cache: false, 
      success: function(response) 
      { 
       obj.html("You have liked this!"); 
      } 
     }); 

     return false; 
    }) 
}) 
+0

감사합니다 nsk . 내가 게시물 유형으로 데이터를 전달해야합니까. 그냥 링크 URL에 이미지 ID를 전달하는 순간에? – Tristan

+0

당신이 원하는대로 전달할 수 있습니다, 이미지 URL 또는 ID 여부 : 데이터를 통해 : {imageUrl : "theUrlHere" imgId : id} – aiiwa

+0

이고 그 게시물 인 경우 $ _POST [ "imageUrl"]로 가져옵니다. – aiiwa