я не могу получить значение после от формы его вставки пустых значений в базе данныхне удается получить доступ к пустой недвижимости в CodeIgniter
контроллер пользователя
public function edit($id = NULL) {
if ($id) {
$this->data ['user'] = $this->user_login_model->get($id);
count ($this->data ['user']) or $this->data ['errors'] [] = "user could not be found";
} else {
$this->data ['user'] = $this->user_login_model->new_user();
}
$rules = $this->user_login_model->rules_admin;
$id || $rules ['password'] .= '|required';
$this->form_validation->set_rules ($rules);
if ($this->form_validation->run() == TRUE) {
$data=$this->user_login_model->array_from_post(array('name','email','password'));
$this->data['password']=$this->user_login_model->$data['password'];
$this->user_login_model->save($data,$id);
redirect('admin/users');
// do stuff
}
, если это новый пользователь, то он будет создавать новые данные
public function new_user() {
$user=new stdClass();
$user->name ='';
$user->email ='';
$user->password ='';
return $user;
var_dump($user);
метод
модель, которая будет цикл через массив и вернуть его
public function array_from_post($fields) {
$data = array();
foreach ($fields as $field) {
$data['feild']=$this->input->post($field);
return $data;
echo var_dump($data);
}
}
это var_dump
object(stdClass)[22]
public 'id' => string '18' (length=2)
public 'email' => string '' (length=0)
public 'password' => string '' (length=0)
public 'name' => string '12' (length=2)
это пусто, вы можете сказать мне, что это проблема?
Я предполагаю, что ваша строка неверна '$ data ['feild'] = $ this-> input-> post ($ field);' Это должно быть $ data [$ feild] = $ this-> input-> post ($ поле); –
Я пробовал оба не работает –
Вы пытались использовать '$ data [$ field] = $ this-> input-> post ($ field);' кроме '$ data [$ feild] = $ this-> input-> почта ($ поле); '? –