[英]How to Insert data to a table using codeigniter Active Record queries?
MODEL VIEW CONTROLLER PROJECT ON CODE IGNITER - UNABLE TO INSERT DATA TO THE TABLE USING Active Record Class .代码点火器上的模型视图控制器项目 - 无法使用 Active Record 类将数据插入表中。
ERROR错误
A PHP Error was encountered
遇到 PHP 错误
Severity: Notice
严重性:注意
Message: Undefined property: Store::$Storemdl
消息:未定义的属性:Store::$Storemdl
Filename: controllers/Store.php
文件名:控制器/Store.php
Line Number: 49
行号:49
Backtrace:
回溯:
File: C:\\xampp\\htdocs\\ci\\application\\controllers\\Store.php Line: 49 Function: _error_handler
文件:C:\\xampp\\htdocs\\ci\\application\\controllers\\Store.php 行:49 功能:_error_handler
File: C:\\xampp\\htdocs\\ci\\index.php Line: 292 Function: require_once
文件:C:\\xampp\\htdocs\\ci\\index.php 行:292 功能:require_once
Fatal error: Call to a member function signupchk() on a non-object in C:\\xampp\\htdocs\\ci\\application\\controllers\\Store.php on line 49
致命错误:在第 49 行调用 C:\\xampp\\htdocs\\ci\\application\\controllers\\Store.php 中非对象的成员函数 signupchk()
A PHP Error was encountered
遇到 PHP 错误
Severity: Error
严重性:错误
Message: Call to a member function signupchk() on a non-object
消息:调用非对象上的成员函数 signupchk()
Filename: controllers/Store.php
文件名:控制器/Store.php
Line Number: 49
行号:49
Backtrace:
回溯:
MODEL模型
<?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;
}
} ?>
CONTROLLER控制器
<?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();
}
}
?>
post the code for model class and, in your model, change this发布模型类的代码,并在您的模型中更改此代码
$this->db->where('username,$username');
to到
$this->db->where('username',$username);
or
$this->db->where("username,$username");// single quote to double quote
in function signupchk($username)
在函数中
signupchk($username)
Where is your model class?你的模型课在哪里? You can try this:
你可以试试这个:
<?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;
}
}
}
?>
You forget to load your model.您忘记加载模型。 Add this line in your insert function:
在插入函数中添加这一行:
$this->load->model('Storemdl');
$this->load->model('Storemdl');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.