Ich habe ein Anmeldeformular, wo ich Benutzereingaben validieren. Hier ist mein Controller:Verwenden von POST-Daten nach der Validierung mit CodeIgniter
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
class Register extends CI_Controller {
public function index()
{
$this->load->model('Users_model');
$this->load->helper('form');
$this->load->library('form_validation');
$data['page_title'] = 'Register';
$this->load->view('header', $data);
// Set form validation rules
$this->form_validation->set_rules('username', 'Username', 'trim|required|min_length[5]|max_length[16]|xss_clean|callback_username_check');
$this->form_validation->set_rules('email', 'Email', 'trim|required|min_length[5]|max_length[64]|valid_email|callback_email_check');
$this->form_validation->set_rules('password', 'Password', 'required');
$this->form_validation->set_error_delimiters('<span class="error">', '</span>');
if ($this->form_validation->run() == FALSE)
{
$this->load->view('register', $data);
}
else
{
// Add the user to the database
$this->Users_model->add_user();
$this->load->view('register_success', $data);
}
$this->load->view('footer', $data);
}
/* Functions to check username and email */
}
/* End of file register.php */
/* Location: ./application/controllers/register.php */
Das Problem ist, mit dieser Zeile: $this->Users_model->add_user();
. Ich möchte den Benutzernamen, die E-Mail-Adresse und das Passwort an mein Benutzermodell übergeben, um den Benutzer zu meiner Datenbank hinzuzufügen, aber ich bin mir nicht sicher, wie ich die POST-Daten in diese Methode bringen kann. Normalerweise würde ich $_POST['username']
usw. verwenden, aber CodeIgniter hat einige Funktionen auf den Eingabewerten ausgeführt (trim()
, xss_clean
usw.). Wie kann ich diese Werte erhalten und sie an meine add_user()
Methode weitergeben?
Gedanken schicken Es wäre das aber war nicht sicher, also dachte ich würde fragen. Vielen Dank. :) –
Gern geschehen! Stört es dich, dass du abstimmst oder meine Antwort akzeptierst? – birderic
SO erlaubt mir nicht sofort eine Antwort zu akzeptieren, anscheinend kann ich in 3 Minuten. :) –