我在我的模型中使用此方法从我的数据库中获取计数结果:
function total_members ()
{
$group_id = $this->input->post('group_id');
$this->load->model('Member_model');
$members = $this->Member_model->members($group_id);
echo $members;
}
在我的控制器中有这种方法:
<style>
#test{
background: red;
height: 100px;
width: 400px;
transition: height 1s;
}
#test.hide {
height: 0;
}
</style>
<div id="test"> </div>
<button>Hide the Div</button>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.js"></script>
<script>
$('button').click(function(){
removeWithAnimate('#test');
});
function removeWithAnimate(id){
$(id).addClass('hide');
setTimeout( function(){
$(id).remove()
},1000);;
}
</script>
我得到了这个奇怪的错误:
严重程度:4096 消息:类CI_DB_mysqli_result的对象无法转换为字符串 文件名:controllers / Payment.php
答案 0 :(得分:1)
试试这个
模型
function members($group_id) {
return $this->db->get_where('member', array('group_id' => $group_id))->num_rows();
}
控制器
function total_members() {
$group_id = $this->input->post('group_id');
$this->load->model('member_model');
$members = $this->member_model->members($group_id);
print_r($members);
}
在codeigniter中有num_rows()
来计算行数。有关详细信息,请查看documentation。
答案 1 :(得分:1)
您需要返回需要另一个调用的结果集。在这种情况下,我建议row()
。试试这些修订过的功能。
function members($group_id)
{
$this->db->where('group_id', $group_id);
$query = $this->db->query('SELECT COUNT(group_id) as count FROM member');
return $query->row();
}
function total_members()
{
$group_id = $this->input->post('group_id');
$this->load->model('Member_model');
$members = $this->Member_model->members($group_id);
if(isset($members))
{
echo $members->count;
}
}
了解不同类型的结果集here