Добавить пользователя на Codeigniter 3 - PullRequest
2 голосов
/ 06 марта 2019

Привет, я новичок здесь, и я не знаю, как использовать codeigniter, и теперь я в замешательстве.Поэтому я сейчас пытаюсь добавить пользовательские данные в базу данных, используя codeigniter 3.1.10.Когда я нажимаю кнопку «Сохранить», там ничего не отображается.Страница была обновлена ​​

Можете ли вы помочь мне, пожалуйста?Модели:

    function add_user($data) {
    $this->db->set("username",$data["username"]);
    $this->db->set("password",$data["password"]);
    $this->db->set("indirizzo",$data["indirizzo"]);
    $this->db->set("citta",$data["citta"]);
    $this->db->set("cap",$data["cap"]);
    $this->db->insert("user");
    $ins_id =$this->db->insert_id();
    return $ins_id;
}

Контроллеры:

    function add() {
    $this->load->library('form_validation');
    $this->form_validation->set_rules('save', '', 'trim|required|number');
    if ($this->form_validation->run()) :
        $data = array(
            "username"=>$this->input->post("username"),
            "password"=>$this->input->post("password"),
            "indirizzo"=>$this->input->post("indirizzo"),
            "citta"=>$this->input->post("citta"),
            "cap"=>$this->input->post("cap"),
        );

        $user_id= $this->user_model->add_user($data);
        $this->log_model->scrivi_log($user_id,"user","add");
    $this->session->set_flashdata('feedback', 'User added.');
        redirect("user/pageuser/".$user_id);
    else :  
        $content = $this->view->load("content");
        $content->load("clienti_form","user/add");
        $this->view->render();
    endif;
}

Ответы [ 2 ]

1 голос
/ 06 марта 2019

Вы делаете много неправильно, начиная с того, что вы делаете вещи из модели в вашем контроллере, и вы должны делить это, иначе вы не используете концепцию MVC.

Попробуйте что-то вроде этого, трудно вам помочь, не видя весь код:

Модель

function add_user() 
{
    $data = array(
        'username' => $this->input->post('username'),
    'password' => $this->input->post('password'),
    'indirizzo' => $this->input->post('indirizzo'),
    'citta' => $this->input->post('citta'),
    'cap' => $this->input->post('cap')
    );

    return $this->db->insert('user', $data);
}

Контроллер

function add() {
    $this->load->library('form_validation');

        $this->form_validation->set_rules('username', 'Username', 'required');
        $this->form_validation->set_rules('password', 'Password', 'required');
    $this->form_validation->set_rules('indirizzo', 'Indirizzo', 'required');
    $this->form_validation->set_rules('citta', 'Citta', 'required');
    $this->form_validation->set_rules('cap', 'Cap', 'required');

    $errore = true;

    if ($this->form_validation->run() === FALSE){ // if doesnt work load your view

            $this->load->view('your view');

    }
    else { 

    $this->user_model->add_user();
        $this->log_model->scrivi_log($user_id,"user","add");
        $this->session->set_flashdata('feedback', 'User added.');
        redirect("user/pageuser/".$user_id);

        $content = $this->view->load("content");
        $content->load("clienti_form","user/add");
        $this->view->render();
    }
}

Вы действительно должны попытаться найти больше об этом, и учиться! Я мог бы изучить много основ CodeIgniter, наблюдая за этим каналом, который имеет отличный контент, и объясняет каждую деталь: https://www.youtube.com/playlist?list=PLillGF-RfqbaP_71rOyChhjeK1swokUIS

0 голосов
/ 06 марта 2019
function add_user($data) {
  $this->db->insert("user",$data);
  $ins_id =$this->db->insert_id();
  return $ins_id;
  }

используйте это в модели ..

и в правилах набора контроллеров для каждого подобного

$this->form_validation->set_rules('username', 'Username', 'required');
$this->form_validation->set_rules('password', 'Password', 'required');
// for all other
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...