Bin Anfänger im Codeigniter, und versuche, ein einfaches Login-Formular zu machen, indem ich einige Online-Vedios verweise. Ich habe alles gemacht . aber wenn ich versuche mich anzumelden zeigt mir 404 Seite nicht gefunden. Bitte helfen Sie mir diese404 Seite nicht gefunden - codeigniter Login
autoload.php
$autoload['libraries'] = array('database','session');
routes.php
$route['default_controller'] = 'welcome';
Controller finsh
welcome.php
<?php defined('BASEPATH') OR exit('No direct script access allowed');
class Welcome extends CI_Controller {
public function __construct(){
parent::__construct();
$this->load->helper('url');
$this->load->model('main_model');
$this->load->library('session');
$this->load->library('form_validation');}
public function index()
{
$this->load->view('welcome_message');
}
function login_user(){
$this->load->view('welcome_message');
} function login_validation(){
$this->load->library('form_validation');
$this->form_validation->set_rules('username','Username','required');
$this->form_validation->set_rules('password','Password','required');
if($this->form_validation->run()){
// true
$username = $this->input->post('username');
$password = $this->input->post('password');
// model function
$this->load->model('main_model');
if($this->main_model->can_login($username, $password)){
$session_date = array(
'username'=> $username);
$this->session->set_userdata($session_date);
redirect(base_url() . 'main/enter');
}else{
$this->session->set_flashdata('error','Invalid Username and Password');
redirect(base_url() . 'main/login_user');
}
} else{
//false
$this->login_user();
}}function enter(){
if($this->session->userdata('username') !=''){
echo '<h2> Welcome - '.$this->session->userdata('username').'/<h2>';
} else{redirect(base_url() . 'main/login_user');}}}
Modellklasse
function can_login($username,$password){
$this->db->where('UserName',$username);
$this->db->where('Password',$password);
$query=$this->db->get('User');
if($query->num_rows() > 0){
return true;
} else{
return false;
}}
Jedes Mal, wenn ich versuche, seine Vorführung 404 Seite nicht
login.php
<form method="post" action="<?php echo base_url(); ?>main/login_validation">
<div class="form-group">
<label>Enter Username</label>
<input type="text" name="username" class="form-control" />
<span class="text-danger"><?php echo form_error('username'); ?></span>
</div>
<div class="form-group">
<label>Enter Password</label>
<input type="password" name="password" class="form-control" />
<span class="text-danger"><?php echo form_error('password'); ?></span>
</div>
<div class="form-group">
<input type="submit" name="insert" value="Login" class="btn btn-info" />
<?php
echo '<label class="text-danger">'.$this->session->flashdata("error").'</label>';
?>
</div>
</form>
Ich hoffe, dass Sie kein einfaches Passwort in db speichern. – user4419336
Haben Sie einen Controller namens "Haupt"? Und, wie von @Solmyr vorgeschlagen, benötigen Sie keine Basis-URL für die Weiterleitung. Nur Umleitung ('Controller/Funktion') – Penguine