我刚创建了一个用户个人资料页面。在我的user_model上,我编写了这个,但我不知道如何设置我的控制器。我只是一个新手:D有人可以帮忙吗? :)提前谢谢
public function get_user(){
$q = $this->db->query("SELECT * FROM tbl_users");
return $q->result();
}
public function get_user_byid($u_id) {
$q = $this->db->query("SELECT * FROM tbl_users WHERE u_id = '$u_id'");
return $q->result();
}
function update_user($u_id, $data) {
$this->db->where('u_id', $u_id);
$this->db->update('tbl_userss', $data);
return $this->db->insert_id();
}
在我的控制器中
<?php
if (!defined('BASEPATH')) {
exit('No direct script access allowed');
}
class Profile_controller extends CI_Controller{
public function __construct() {
parent::__construct();
$this->load->model('user_model');
$this->load->library('session');
}
public function index(){
$data['title'] = 'My Profile';
$data['content'] = 'profile';
$this->load->view('layout/admin_layout', $data);
}
public function update_user_data(){
$data = array(
'username'=>$this->input->post('username'),
'email'=>$this->input->post('email'),
'password'=>md5($this->input->post('email')),
'fname'=>$this->input->post('fname'),
'mname'=>$this->input->post('mname'),
'lname'=>$this->input->post('lname'),
'contact_no'=>$this->input->post('contact_no'),
'address'=>$this->input->post('address')
);
$this->user_model->update_user($data);
}
}
答案 0 :(得分:1)
使用此
function update_user($u_id, $data) {
$this->db->where('u_id', $u_id);
$this->db->update('tbl_userss', $data);
return $this->db->affected_rows() == 1 ? $u_id : 0;
}
编辑:
URL:
POST http://www.example.com/mycontroller/update_user_data/5
控制器
public function update_user_data($u_id){
$data = array(
'username'=>$this->input->post('username'),
'email'=>$this->input->post('email'),
'password'=>md5($this->input->post('email')),
'fname'=>$this->input->post('fname'),
'mname'=>$this->input->post('mname'),
'lname'=>$this->input->post('lname'),
'contact_no'=>$this->input->post('contact_no'),
'address'=>$this->input->post('address')
);
$this->user_model->update_user($u_id, $data);
}
答案 1 :(得分:0)
$ data应该是一个包含用户表'tbl_users'的值的数组,比如
$ data ['name'] ='用户名'; $ data ['age'] = '22';等..等等。
这里的术语name, age
是表'tbl_users'
答案 2 :(得分:0)
您只在此处发送一个参数:$this->user_model->update_user($data);
在您的模型中,您将收到两个参数:function update_user($u_id, $data){...}
在将$u_id
传递给模特时,你从未提及过public function your_action(Request $request)//inject request to access per_page query param
{
$perPage = $request->query('per_page', 10);
$items = YourModel::paginate($perPage)->appends([
'per_page' => $perPage
]);
return view('your_view', compact('items', 'perPage'));
}
。