Widziałem tutaj niezbyt pozytywne opinie na temat tego FW.
Więc zaznaczam, że nie jest to mój wybór, po prostu wymaganie z góry

Chciałbym się zapytać czy mam prawidłowe podejście:
Controller
<?php class Register extends CI_Controller { public function index() { $data['title'] = 'Rejestracja'; $data['header'] = 'Rejestracja w systemie'; $this->form_validation->set_rules('username', 'Username', 'required|alpha|min_length[3]|xss_clean'); $this->form_validation->set_rules('password', 'Password', 'required|min_length[6]|xss_clean'); $this->form_validation->set_rules('email', 'Email', 'required|valid_email'); if ($this->form_validation->run() == false) { $this->load->view('view_register', $data); } else { $this->load->model('Register_model'); $count = $this->Register_model->checkUser($this->input->post('username')); if ($count > 0) { $data['error'] = '<p>W bazie danych istnieje już taki użytkownik</p>'; $this->load->view('view_register', $data); } else { $count = $this->Register_model->checkMail($this->input->post('email')); if ($count > 0) { $data['error'] = '<p>W bazie danych istnieje już użytkownik o takim adresie e-mail</p>'; $this->load->view('view_register', $data); } else { $this->Register_model->addUser(); $data['title'] = 'Gratulacje'; $data['header'] = 'Udana rejestracja !'; $data['user'] = $this->input->post('username'); $this->load->view('view_result', $data); } } } } } ?>
Model
<?php class Register_model extends CI_Model { public function checkUser($username) { $this->db->select('username'); $this->db->where('username =', $username); $query = $this->db->get('users'); return $query->num_rows(); } public function checkMail($mail) { $this->db->select('email'); $this->db->where('email =', $mail); $query = $this->db->get('users'); return $query->num_rows(); } public function addUser() { $this->username = $this->input->post('username'); $this->email = $this->input->post('email'); $this->db->insert('users', $this); } } ?>
Views
view_register.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title><?=$title;?></title> </head> <body> <h1><?=$header;?></h1> <p>To jest Rejestracja</p> <?=form_open('register');?> Login:<br /> Hasło:<br /> E-mail:<br /> <?=form_submit('register', 'Rejestracja');?> <?=form_close();?> </body> </html>
view_result.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title><?=$title;?></title> </head> <body> <h1><?=$header;?></h1> Dziękujemy <?=$user?> za rejestrację<br /> Możesz się teraz <?=anchor('login', 'zalogować')?> </body> </html>
Dzięki za góry za wszelkie porady