我正在使用 post 方法从视图中获取数据,即在变量$data我需要传递这个,即$data到我已经尝试过的模型,如下所示,但它显示为 PHP
遇到错误 严重性: 通知消息: 未定义的属性: 邮编::$data 文件名:核心/型号.php 行号:77
以下是我的代码:
Array
(
[name] => Mohan
[email] => mohan@gmail.com
[phone] => 9739764966
[location] => TEST
[website] => 192.168.1.156
[useragent] => Chrome
[ipaddress] => 192.168.1.23
[desc] => Bengaluru
[captcha] => 20701449
[captcha_word] => 20701449
[submit] => Submit
)
控制器:
public function postEnquiry()
{
$data = $this->input->post();
// echo "<pre>";print_r($data);die;
$this->load->model('Enquiry');
$result = $this->Enquiry->sendenquiry($data);
if($result){
$this->session->set_flashdata('success','Sent Successfully');
redirect(ROOT_PATH."/form");
}
}
型:
<?php
class Enquiry extends CI_Model {
public function __construct()
{
parent::__construct();
$this->load->database();
}
public function sendenquiry($data)
{
print_r($data);die;
}
}
?>
必须先在自动加载中加载数据库库.php
$autoload['libraries'] = array('database');
我希望这对你有帮助
首先,您必须定义变量,然后将 post 值分配给变量并传递参数,
public function postEnquiry()
{
$this->load->model('Enquiry');
$data = array();
$data = $this->input->post();
$result = $this->Enquiry->sendenquiry($data);
if($result){
$this->session->set_flashdata('success','Sent Successfully');
redirect(ROOT_PATH."/form");
}
}
(OR)
// You can get post values from model directly
// 1.Controller
public function postEnquiry()
{
$this->load->model('Enquiry');
$result = $this->Enquiry->sendenquiry();
if($result){
$this->session->set_flashdata('success','Sent Successfully');
redirect(ROOT_PATH."/form");
}
}
// 2.Model
public function sendenquiry()
{
echo '<pre>'; print_r($this->input->post()); echo '</pre>'; //post values
}
您需要在 autoload.php 中加载数据库库:
$autoload['libraries'] = array('database');
此外,在构造函数或函数中加载模型,如下所示:
$this->load->model('User');
看看这里的类似问题 代码点火器模型错误:未定义的属性
希望对您有所帮助。