在非对象上调用成员函数 select() :codeigniter over XAMPP

时间:2021-03-12 07:23:25

标签: php database codeigniter xampp

以下是我的设置和代码。

model.php

<?php 
class Opinion_poll_model extends CI_Model 
{ 
     public function __construct() 
     { 
         $this->load->database(); 
     } 

     public function total_votes() 
     { 
        $query = $this->db->select('COUNT(choice) as choices_count')->get('js_libraries');
        return $query->row()->choices_count; 
     } 

      public function get_results() 
      { 
        $libraries = array("", "JQuery", "MooTools", "YUI Library", "Glow"); 
        $table_rows = ''; 

        for ($i = 1; $i < 5; $i++) 
        {
            $sql_stmt = "SELECT COUNT(choice) choices_count FROM js_libraries WHERE choice = $i;"; 
            $result = $model->select($sql_stmt); $table_rows .= "<tr><td>" . $libraries [$i] . " Got:</td><td><b>" . $result[0] . "</b> votes</td></tr>"; 
         } 
     
       } 


   public function add_vote($choice) 
   { 
        $ts = date("Y-m-d H:i:s"); $data = array('choice' => $choice, 'ts' => $ts); $this->db->insert('js_libraries', $data); 
}

}
?>

数据库.php

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'opinion_poll';
$db['default']['dbdriver'] = 'mysql';

***公开密码,因为它只是一个示例应用程序。

我已经通过phpmyadmin手动创建了一个opinion_poll数据库和表js_libraries。

我想我在 xampp 和 codeigniter 的数据库配置中遇到了一些混淆。所以我遇到了上述错误。

A PHP Error was encountered
Severity: Notice

Message: Undefined variable: model

Filename: models/opinion_poll_model.php

Line Number: 23


Fatal error: Call to a member function select() on a non-object in C:\xampp\htdocs\ciopinionpoll\application\models\opinion_poll_model.php on line 23

1 个答案:

答案 0 :(得分:1)

您正在使用范围中未定义的 $model

尝试使用 $this->db->select($sql_stmt);