【问题标题】:Why I can't Use Admin Dashboard [duplicate]为什么我不能使用管理仪表板 [重复]
【发布时间】:2019-09-23 11:24:33
【问题描述】:

所以,我在我的 VPS Ubuntu 16 中安装了 codeigniter。当我想登录到 mydomain/admin 时,我输入了我的详细信息。如果我按登录,我会收到以下错误以及其他成员无法创建帐户。

An uncaught Exception was encountered
Type: Error
Message: Call to a member function result() on boolean
Filename: /var/www/html/application/models/backend/dashboard/Dashboard_model.php
Line Number: 128

回溯:

File: /var/www/html/application/controllers/backend/dashboard/Home.php
Line: 27
Function: monthlyInvestment

File: /var/www/html/index.php
Line: 315
Function: require_once

我在第 128 行的代码:

return $query = $this->db->query("SELECT MONTHNAME(\`invest_date\`) as month, SUM(\`amount\`) as invest FROM \`investment\` GROUP BY YEAR(\`invest_date\`), MONTH(\`invest_date\`)")->result();

第 27 行:

$data['monthlyInvestment'] = $this->dashboard_model->monthlyInvestment();

在第 315 行:

require_once BASEPATH.'core/CodeIgniter.php';

【问题讨论】:

  • 当您不知道如何获取实际的查询错误时,请将您的查询复制粘贴到 phpmyadmin 并执行它——它会清楚地显示错误。

标签: javascript php codeigniter ubuntu


【解决方案1】:

发生这种情况是因为您的查询返回一个布尔值。在这种情况下,由于某些数据库错误而为 FALSE。我最好的猜测是错误是因为您试图逃避查询字符串中的反引号。如下更改,但不要立即返回。

$query = $this->db->query("SELECT MONTHNAME(`invest_date`) as month, SUM(`amount`) as invest FROM `investment` GROUP BY YEAR(`invest_date`), MONTH(`invest_date`)");

// check that $query isn't FALSE, if not return result() else return empty array.
return $query !== FALSE ? $query->result() ? array();

为什么要返回一个空数组?如果查询没有失败但没有要返回的数据,result() 将返回相同的内容。

【讨论】:

    猜你喜欢
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 2016-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-01
    • 2016-07-02
    相关资源
    最近更新 更多