1
function random()
    {
    $anketadb = $this->load->database('anketa',TRUE);
    $br = $anketadb->count_all_results('anketadata');
    $nmb = mt_rand(1,$br);

    if ($nmb != 1){
    $nmb = $nmb - 1;
    }

    $count = $anketadb->get('anketadata', 1, $nmb);

    return $count;
    }

为什么当我在视图中回显此代码时返回错误:

遇到 PHP 错误

严重性:4096

消息:CI_DB_mysqli_result 类的对象无法转换为字符串

文件名:ankete/rezultatiankete.php

行号:52

4

2 回答 2

1

无论如何,在您使用的示例中,您应该向我们展示更多代码(控制器、视图等)

return $count;

在这种情况下$count;是一个对象,要回显它的字段,您必须在视图中循环,例如

foreach ($count->result() as $row)
{
    echo $row->fieldname; // rerplace the fieldname with a real field/column name of your database
}

所以如果你想回应$count那你就犯了一个错误,它是一个对象,在这里阅读更多

于 2012-10-19T08:55:25.110 回答
0

echo不适用于用于print_r(returned value)输出对象、数组的对象

获取随机列使用SELECT * FROM table ORDER BY RAND() LIMIT 0,1;

于 2012-10-19T08:48:10.793 回答