ajax - 使用 Ajax 动态显示数据

标签 ajax codeigniter

在此代码中,单击“赞”按钮后,数据已添加到数据库中。我现在想要做的是我想在添加数据后,我会查询所选项目的总数并显示它而不加载页面。

这是我现在的代码:

我的看法:

<p id='state'><i class='fa fa-thumbs-up'></i><span id="likeThis"><?php echo $countLike;?></span> likes &bull; <i class='fa fa-thumbs-down'></i><?php echo $countDisLike;?> dislikes &bull;<i class='fa fa-thumbs-down'></i><a href='<?php echo base_url();?>index.php/photoCheese/deleteUploadPic/<?php echo $row['uploadID'];?>'>Delete Picture</a></p>
 <input type="button" onclick="getVal(this.value)" class='detailButton1' name='like_name' id='like_id' value='<?php echo $link;?>' title='Like this post'><i class='fa fa-thumbs-up'></i> Like</input>

Javascript:
function getVal(value) { jQuery.ajax({ type:"GET", url: "<?php echo base_url();?>index.php/photoCheese/like_total/", dataType:'json', data: {like_id : value}, success: function(res){ alert(res.no_likes); if(res){ jQuery("#likeThis").html(res.no_likes); }
} });

Controller :
public function like_total(){
        $id = $this->session->userdata('userID');
        $upload = $this->input->get('like_id');
        $data = array('like' => 1,
                        'userID'=>$id,
                        'uploadID'=>$_GET['like_id']);

        $result = $this->photoCheese_model->get_like_total($data,$upload);


        return json_encode($result);
    }

模型:
public function get_like_total($data,$uplaod){
        $success = $this->db->insert('tbl_like',$data);

        if($success){
            $this->db->select('uploadID,SUM(`like`) as no_likes',false);
            $this->db->where('uploadID',$upload);
            $this->db->where('like !=',2);

            $query = $this->db->get();


        }
        return $query->result_array();
    }

此代码不会显示 total_likes。这个有什么问题吗?

最佳答案

这对我来说似乎是一个不错的代码

public function like_total(){
    $id = $this->session->userdata('userID');
    $upload = $this->input->get('like_id');
    $data = array('like' => 1,
                    'userID'=>$id,
                    'uploadID'=>$_GET['like_id']);

    $result = $this->photoCheese_model->get_like_total($data,$upload);


    return json_encode($result);
}

试一试..改变你的

return json_encode($result)





echo json_encode($result)



这个例子以后可能对你有帮助jquery ajax php example

关于ajax - 使用 Ajax 动态显示数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30115944/

相关文章:

java - Spring ajax 调用上的 400 错误请求

javascript - 显示来自隐藏 iframe 提交的成功/失败消息

php - 给定开始日期和持续时间,如何计算每月的天数?

php - 如何在CodeIgniter中表示SQL的 `having count(' *')`?

php - 了解 php 引用和静态

jquery - 通过 AJAX 提供 Fancybox

jquery - 可以以某种方式更改回调函数名称吗?

javascript 连接到网站代码不起作用

php - PHP站点突然出现 "MySQL server has gone away"错误

javascript - 在数据表的隐藏列中获取 input[type=hidden] 的值