我正在尝试将发布的数据插入数据库,如下所示。
public function submit_signup(){
if($this->input->post('submit')){
$user_data['data']=array(
'username' => $this->input->post('username'),
'email' => $this->input->post('email'),
'password' => $this->input->post('password'),
'mobile' => $this->input->post('mobile')
);
}
$this->load->model('user_model');
if($this->user_model->register_user($user_data)){
echo 'data entered';
}
$this->load->view('templates/header');
$this->load->view('test',$user_data);
$this->load->view('templates/footer');
}
我的模特:
class user_model extends CI_Model {
public function __construct() {
parent::__construct();
}
public function register_user($data){
if(!$this->db->insert('user',$data)) {
echo 'Data not entered';
}
return true;
}
}
当我按表格时,这就是我得到的
遇到PHP错误
严重性:注意
消息:数组到字符串转换
文件名:mysql / mysql_driver.php
需要你的帮助
答案 0 :(得分:0)
将您的数组设为
$user_data=array(
'username' => $this->input->post('username'),
'email' => $this->input->post('email'),
'password' => $this->input->post('password'),
'mobile' => $this->input->post('mobile')
);
删除['data']
部分。然后将其用于插入查询
检查manuall
答案 1 :(得分:0)
为什么不将确切数组 $ user_data ['data'] 传递给模型函数
if($this->user_model->register_user($user_data['data']))
{
echo 'data entered';
}
答案 2 :(得分:0)
将数据插入数据库,您可以尝试以下操作:
$this->load->model('user_model');
$user_data=[
'username' => $this->input->post('username'),
'email' => $this->input->post('email'),
'password' => $this->input->post('password'),
'mobile' => $this->input->post('mobile')
];
$this->user_model->register_user($user_data)
或
//没有模型
$this->db->insert('table_name', $user_data);