2017-03-09 9 views
1

こんにちは私は、このユーザーがこの投稿を好きであったデータベースに保存されているようなユーザーが投稿を好きなときにシステムを作成しようとしています。私はこのpost.hereに行われているどのように多くの同類数えることができることは、私のコードがどのように記事にしているどのように多くの同類変数がcodeigniterのjavascriptの配列にある回数を数える方法は?

スクリプトを

を取得していたときに、誰かがクリックするたびなどを保存するだけに列タイプ
function select_likes(post_id) 
{ 
    var Post_id=post_id; 
    var User_id = $('.id_data').attr('value'); 
    jQuery.ajax({ 
        type:'POST', 
        url:'<?php echo base_url("user/select_likes"); ?>', 
        data: {Post_id:Post_id,User_id:User_id}, 
        dataType: 'json', 
        success:function(data) 
        { 
        var ParsedObject = JSON.stringify(data);    
         var json = $.parseJSON(ParsedObject); 

         $.each(json, function (key, data) { 
          var likes=data.type; 
        // alert(likes); 
          var count=likes.length; 
          alert(count); 
       //   var post_id=data.post_id; 
       //   $post_id=post_id; 
       //   // alert(comment); 
       //   // // alert(post_id); 
       //   // var  div_list=document.getElementById('#comment_div').innerHTML='post_id; 
       //   // $("#comment_post_id").attr('value',$post_id); 
          var mediaID ='.likes'+post_id; 
          $(mediaID).append(likes); 
        }); 
       } 
      }); 
} 

コントローラ

public function select_likes() 
{ 
    $Post_id=$this->input->post('Post_id'); 
    $User_id=$this->input->post('User_id'); 

    $this->load->model('Pmodel'); 
    $select_likes=$this->Pmodel->select_likes_post_id($Post_id,$User_id); 
    // print_r($select_likes); 
    echo json_encode($select_likes); 
} 

モデル

public function select_likes_post_id($Post_id,$User_id) 
{ 
    $this->db->select('*'); 
    $this->db->from('userpost_likes_share'); 
    $this->db->where('post_id',$Post_id);  
    $this->db->where('type','like'); 
    $query=$this->db->get(); 
    $likes=$query->result_array(); 

    return $likes; 
} 

が、私はそれをどのように数えることができますか?それは単にそれがポスト上のように多くのことと

json_encode(array('like_count'=>$like_count))として jsonとしてそれを渡します...コントローラ count($select_likes)$select_likescount()機能を使用する時間のjavscript

答えて

2

における変数の呼び出しを何をカウントすることは可能ではありませんあなたは、ポスト上のような数の合計としてdata.like_countを使用することができますjsのスクリプトで

public function select_likes() 
{ 
$Post_id=$this->input->post('Post_id'); 
    $User_id=$this->input->post('User_id'); 

    $this->load->model('Pmodel'); 
    $select_likes=$this->Pmodel->select_likes_post_id($Post_id,$User_id); 
    $like_count = count($select_likes); 
    echo json_encode(array('like_count'=>$like_count)); 
} 

用途:だから、コントローラのコードでのようにすることができます。

テーブルからのカウントが必要な場合は、 'userpost_likes_share'テーブルから1つの列のみを選択することをお勧めします。テーブルのID(プライマリキー)のみを選択してコードを高速化できます。

は、それが返事に感謝を働いた男

+1

...あなたは私が間違って取得し、間違った方向に答えると思うなら、私に教えてください@AshishRaj –

関連する問題