找不到 Codeigniter 对象错误
Codeigniter object not found error
我做了一个登录系统,但是当我点击"login"时,我得到了这个错误信息:
"error 404 object not found".
我现在不知道怎么办:S.
这是我的代码:
我的登录文件(带按钮的主文件)
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>WELCOME! » Jaranguda.com</title>
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<h3>Login</h3>
<hr>
<form action="<?php echo base_url('Login/user')?>" method="POST">
<div class="form-group">
<label for="cari">USERNAME</label>
<input type="text" name="usuario" id="usuario" class="form-control">
</div>
<div class="form-group">
<label for="cari">PASSWORD</label>
<input type="password" name="contrasena" id="contrasena" class="form-control">
</div>
<input class="btn btn-primary" type="submit" value="Login">
<input class="btn btn-primary" type="reset" value="Reset">
</form>
</div>
</body>
控制器文件:
<?php
class Login extends CI_Controller{
public function __construct(){
parent::__construct();
$this->load->model("Login_model");
}
public function index(){
$this->load->view("login");
}
public function user(){
$data['login']=$this->Login_model->login();
$this->load->view('user', $data);
}
}
?>
模型文件:
<?php
class Login_model extends CI_Model{
public function __construct(){
$this->load->database();
}
public function login(){
$usuario=$this->input->POST('usuario', TRUE);
$contrasena=md5($this->input->POST('contrasena', TRUE));
$data=$this->db->query("SELECT * from usuarios where usuario=$usuario and contrasena=$contrasena LIMIT 1");
return $data=row();
}
}
?>
用户档案:
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>BIENVENIDO! » Jaranguda.com</title>
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js">
</script>
</head>
<body>
<div class="container">
<h3>Login</h3>
<hr>
<?php
if(count($login)>0)
{
if($login->tipo=='0')
echo "<p>YOU LOGGED AS: <b>".$login->tipo."</p>"
}
elseif($login->tipo =='1'){
echo "<p>usuario <b>".$login->usuario."</b> LOGGED AS: <b>".$login->tipo."</p>"
}
else{
echo "<p>usuario <b>".$login->usuario."</b> SOMETHING WENT WRONG WHILE LOGGING</p>"
}
?>
<?php
}
else
{
echo "<p>USERNAME/PASSWORD INVALID.</p>"
}
?>
</div>
<script src="//code.jquery.com/jquery.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>
</body>
</html>
希望你能帮助我:S
您的登录方法 应该 在 Login_model
return :
return $data->row();
不是 :
return $data = row();
编辑
您需要将用户信息传递给您的模式:
这两行应该在你的控制器中:
public function user(){
$usuario=$this->input->post('usuario', TRUE);
$contrasena=md5($this->input->post('contrasena', TRUE));
$data['login']=$this->Login_model->login($usuario, $contrasena);
$this->load->view('user', $data);
}
和您的 模型 :
public function login($usuario, $contrasena) {
$this->db->where('usuario',$usuario);
$this->db->where('contrasena',$contrasena);
$query = $this->db->get("your_table_name");
return $query->row_array();
}
上图中显示的 URL 是 application/config/config.php
中未设置 $config['base_url']
时发生的典型情况。
您必须为该配置项设置一个值。它必须包含协议 http
或 https
$config['base_url'] = 'http://example.com/';
在未命名的虚拟服务器上,它可能是
$config['base_url'] = 'http://localhost/';
或者也许
$config['base_url'] = 'localhost';
我不记得了。此外,上面可能需要一个尾随的“/”,例如localhost/
我做了一个登录系统,但是当我点击"login"时,我得到了这个错误信息: "error 404 object not found".
我现在不知道怎么办:S.
这是我的代码:
我的登录文件(带按钮的主文件)
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>WELCOME! » Jaranguda.com</title>
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<h3>Login</h3>
<hr>
<form action="<?php echo base_url('Login/user')?>" method="POST">
<div class="form-group">
<label for="cari">USERNAME</label>
<input type="text" name="usuario" id="usuario" class="form-control">
</div>
<div class="form-group">
<label for="cari">PASSWORD</label>
<input type="password" name="contrasena" id="contrasena" class="form-control">
</div>
<input class="btn btn-primary" type="submit" value="Login">
<input class="btn btn-primary" type="reset" value="Reset">
</form>
</div>
</body>
控制器文件:
<?php
class Login extends CI_Controller{
public function __construct(){
parent::__construct();
$this->load->model("Login_model");
}
public function index(){
$this->load->view("login");
}
public function user(){
$data['login']=$this->Login_model->login();
$this->load->view('user', $data);
}
}
?>
模型文件:
<?php
class Login_model extends CI_Model{
public function __construct(){
$this->load->database();
}
public function login(){
$usuario=$this->input->POST('usuario', TRUE);
$contrasena=md5($this->input->POST('contrasena', TRUE));
$data=$this->db->query("SELECT * from usuarios where usuario=$usuario and contrasena=$contrasena LIMIT 1");
return $data=row();
}
}
?>
用户档案:
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>BIENVENIDO! » Jaranguda.com</title>
<link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js">
</script>
</head>
<body>
<div class="container">
<h3>Login</h3>
<hr>
<?php
if(count($login)>0)
{
if($login->tipo=='0')
echo "<p>YOU LOGGED AS: <b>".$login->tipo."</p>"
}
elseif($login->tipo =='1'){
echo "<p>usuario <b>".$login->usuario."</b> LOGGED AS: <b>".$login->tipo."</p>"
}
else{
echo "<p>usuario <b>".$login->usuario."</b> SOMETHING WENT WRONG WHILE LOGGING</p>"
}
?>
<?php
}
else
{
echo "<p>USERNAME/PASSWORD INVALID.</p>"
}
?>
</div>
<script src="//code.jquery.com/jquery.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>
</body>
</html>
希望你能帮助我:S
您的登录方法 应该 在 Login_model
return :
return $data->row();
不是 :
return $data = row();
编辑
您需要将用户信息传递给您的模式:
这两行应该在你的控制器中:
public function user(){
$usuario=$this->input->post('usuario', TRUE);
$contrasena=md5($this->input->post('contrasena', TRUE));
$data['login']=$this->Login_model->login($usuario, $contrasena);
$this->load->view('user', $data);
}
和您的 模型 :
public function login($usuario, $contrasena) {
$this->db->where('usuario',$usuario);
$this->db->where('contrasena',$contrasena);
$query = $this->db->get("your_table_name");
return $query->row_array();
}
上图中显示的 URL 是 application/config/config.php
中未设置 $config['base_url']
时发生的典型情况。
您必须为该配置项设置一个值。它必须包含协议 http
或 https
$config['base_url'] = 'http://example.com/';
在未命名的虚拟服务器上,它可能是
$config['base_url'] = 'http://localhost/';
或者也许
$config['base_url'] = 'localhost';
我不记得了。此外,上面可能需要一个尾随的“/”,例如localhost/