【问题标题】:inserting data in the database using object oriented programming使用面向对象编程在数据库中插入数据
【发布时间】:2017-05-26 05:40:07
【问题描述】:

我创建了一个代码,用于使用 codeignitor 通过 php 在数据库中输入学生姓名和 roll_no,但显示一些错误,例如: 控制器代码是

class Stud_controller extends CI_Controller{
function __contruct(){
    parent::__contruct();
    $this->load->helper('url');
     $this->load->model('Stud_Model');
     $this->load->database();

型号代码如下:

class Stud_Model extends CI_Model{

        function __construct(){
            parent::__construct();

        }

错误如下:

致命错误:第 13 行 C:\wamp64\www\codeignitor\CodeIgniter-3.1.2\application\controllers\Stud_Controller.php 中的 null 时调用成员函数 get()

遇到 PHP 错误

严重性:通知

消息:未定义的属性:Stud_controller::$db

文件名:控制器/Stud_Controller.php

行号:13

回溯:

文件:C:\wamp64\www\codeignitor\CodeIgniter-3.1.2\application\controllers\Stud_Controller.php 线路:13 函数:_error_handler

文件:C:\wamp64\www\codeignitor\CodeIgniter-3.1.2\index.php 线路:315 函数:require_once

所以如果有人可以帮我解决错误。

【问题讨论】:

  • Stud_Controller.php Line: 13 Function: _error_handler 在哪里?你打电话给$db,即Undefined
  • 第13行代码如下: public function index(){ $query=$this->db->get("stud"); $data['records']=$query->result(); $this->load->helper('url'); $this->load->view('stud_view',$data); }
  • 先生,您想看哪部分代码,我会为您提供那部分代码..
  • 别忘了在application/config/database.php中设置你的数据库

标签: php codeigniter


【解决方案1】:

控制器:

 class Stud_controller extends CI_Controller
        {
        function __contruct()
        {
             parent::__contruct();
             $this->load->helper('url');
             $this->load->model('Stud_Model');
        }
        public index()
        {
        $data['records'] = $this->Stud_Model->get_records();
        $this->load->view('stud_view',$data);
        }

型号:

class Stud_Model extends CI_Model{

        function __construct()
        {
            parent::__construct();

        }

        public function get_records()
        {
            $query = $this->db->get('stud');//stud is your table name
            return $query->result_array(); //returns result in array format
        }

在您看来,使用 foreach 循环获取记录如下:

foreach ($records as  $record) {
    //your operation
    echo $record['column_name']; //column name is your db table col name
}

【讨论】:

  • 不抱歉先生,它不工作仍然显示相同的错误。
  • 别忘了从application/config/database.php设置你的数据库
  • 数据库配置如下:$db['default'] = array( 'dsn' => '', 'hostname' => 'localhost', 'username' => 'root ', '密码' => '', '数据库' => 'stud',
  • stud 是您的表名。在此处设置您的数据库名称
  • 我也试过了,但实际上我创建的表和数据库名称相同
猜你喜欢
  • 1970-01-01
  • 2022-07-11
  • 2013-01-08
  • 1970-01-01
  • 2010-10-19
  • 1970-01-01
  • 2011-01-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多