Я сделал систему членства с form_validation. Но URL показывает расширение и функцию контроллера. Я не хочу, чтобы это случилось. Я не могу использовать set_message, когда я перенаправляю с перенаправлением.
мои имена файлов просматривают - зарегистрируйте
мое имя контроллера файлов - RegisterController
funciton name = save
url = localhost / RegisterController / save
я хочу, чтобы это было так
url = localhost / register
Как отлавливать ошибки с помощью flashdata? или есть другой способ?
public function kaydet()
{
$this->load->helper('security');
$this->load->model('model_kayit');
$form_kural = array(
array(
'field' => 'username',
'label' => '5-16 Karakter Uzunluğunda Kullanıcı Adı',
'rules' => 'required|min_length[6]|max_length[12]|alpha_numeric|xss_clean'
),
array(
'field' => 'password',
'label' => '6-24 karakter uzunluğunda parola',
'rules' => 'trim|required|min_length[6]|max_length[12]|matches[password2]|alpha_numeric|xss_clean'
),
array(
'field' => 'password2',
'label' => '6-24 karakter uzunluğunda parola',
'rules' => 'trim|required|min_length[6]|max_length[12]|alpha_numeric'
),
array(
'field' => 'email',
'label' => 'Hesabınızın E-Posta Adresi',
'rules' => 'required'
)
);
$this->load->library('form_validation');
$required = $this->form_validation->set_message('required', '%s bilgisini girmelisiniz.');
$matches = $this->form_validation->set_message('matches', 'Parolalar eşleşmiyor.');
$valid_email = $this->form_validation->set_message('valid_email', 'Geçerli email adresi giriniz.');
$this->session->set_flashdata('hata_mesaj', ''.$matches.'');
$this->form_validation->set_rules($form_kural);
$this->form_validation->set_error_delimiters('<div class="error">', '</div>');
//$this->form_validation->set_message('kullanici_kontrol', 'Girdiğiniz kullanıcı adı daha önce kullanılmış!');
if( $this->form_validation->run() === TRUE )
{
$username = AntiVeriTemizle($this->input->post('username')); //Formdan Verileri alıyoruz.
$password = AntiVeriTemizle($this->input->post('password'));
$password2 = AntiVeriTemizle($this->input->post('password2'));
$email = AntiVeriTemizle($this->input->post('email'));
if( $this->model_kayit->kayit_ol($username,$password,$password2,$email) )
{
$this->session->set_flashdata('mesaj', 'Kullanıcı kaydı başarıyla gerçekleştirildi.');
}
}
else if( $this->form_validation->run() === FALSE )
{
$this->session->set_flashdata('sifre_uyusmuyor', ''.$matches.' Uyuşmuyor.');
return redirect(base_url("kayit-ol"));
}
//$data['icerik'] = $this->load->view('pages/kayit-ol', '', TRUE);