[英]How to Insert data to a table using codeigniter Active Record queries?
代码点火器上的模型视图控制器项目 - 无法使用 Active Record 类将数据插入表中。
错误
遇到 PHP 错误
严重性:注意
消息:未定义的属性:Store::$Storemdl
文件名:控制器/Store.php
行号:49
回溯:
文件:C:\\xampp\\htdocs\\ci\\application\\controllers\\Store.php 行:49 功能:_error_handler
文件:C:\\xampp\\htdocs\\ci\\index.php 行:292 功能:require_once
致命错误:在第 49 行调用 C:\\xampp\\htdocs\\ci\\application\\controllers\\Store.php 中非对象的成员函数 signupchk()
遇到 PHP 错误
严重性:错误
消息:调用非对象上的成员函数 signupchk()
文件名:控制器/Store.php
行号:49
回溯:
模型
<?PHP
defined('BASEPATH') OR exit('No direct script access allowed');
function __construct ()
{
parent ::__construct();
$this->load->database();
}
function signupchk($username)
{
$this->db->select('username');
$this->db->from('users');
$this->db->where('username,$username');
$sql = $this->db->get();
if($sql && $sql->num_rows() > 0)
{
return false;
}
else
{
return true;
}
}
function signup($data)
{
$data = array(
'rusername'=> 'username',
'rpassword'=> 'password',
'remail' => 'email',
'rphone' => 'phone',
'rgender' => 'gender',
'rqualify' => 'qualification',
);
$sql = $this->db->insert('users',$data);
return $sql;
}
} ?>
控制器
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Store extends CI_Controller
{
function index()
{
$this->load->view('home');
}
function login()
{
$this->load->view('login');
}
function signup()
{
$this->load->view('signup');
}
function inserttbl(){
$username = $this->input->post('username');
$rslt = $this->Storemdl->signupchk($username);
if($result){
$this->Storemdl->signup($this->input->post());
}
else
{
echo "username already exists";
}
$this->index();
}
}
?>
发布模型类的代码,并在您的模型中更改此代码
$this->db->where('username,$username');
到
$this->db->where('username',$username);
or
$this->db->where("username,$username");// single quote to double quote
在函数中signupchk($username)
你的模型课在哪里? 你可以试试这个:
<?PHP
defined('BASEPATH') OR exit('No direct script access allowed');
class Your_model_name extends CI_Model{
function __construct ()
{
parent ::__construct();
$this->load->database();
}
function signupchk($username)
{
$this->db->select('username');
$this->db->from('users');
$this->db->where('username,$username');
$sql = $this->db->get();
if($sql && $sql->num_rows() > 0)
{
return false;
}
else
{
return true;
}
}
function signup($data)
{
$data = array(
'rusername'=> 'username',
'rpassword'=> 'password',
'remail' => 'email',
'rphone' => 'phone',
'rgender' => 'gender',
'rqualify' => 'qualification',
);
$sql = $this->db->insert('users',$data);
return $sql;
}
}
}
?>
您忘记加载模型。 在插入函数中添加这一行:
$this->load->model('Storemdl');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.