嗨,我有关于tuts的用户教程的问题…当我在登录表单中输入用户名和密码时,返回的结果是未验证。我不知道发生了什么。下面是代码
型号: user.php
<?php
class User extends CI_Model
{
// Create a user
function create_user($data){
$this->db->insert('users',$data);
}
// Login
function login($username,$password){
$where=array(
'username'=>$username,
'password'=>$password);
$this->db->select()->from('users')->where($where);
$query=$this->db->get();
return $query->first_row('array');
}
}
控制器: users.php
<?php
class Users extends CI_Controller
{
// Login Function
function login(){
$data['error']=0;
if ($_POST){
$this->load->model('user');
$username=$this->input->post('username',true);
$password=$this->input->post('password',true);
$user=$this->user->login($username,$password);
if(!$user){
$data['error']=1;
} else {
$this->session->set_userdata('userID',$user['userID']);
$this->session->set_userdata('user_type',$user['user_type']);
redirect(base_url().'index.php/posts/');
}
}
$this->template->load('layout/template', 'login', $data);
}
// Logout Function
function logout(){
$this->session->sess_destroy();
redirect (base_url()).'index.php/posts/';
}
}
查看: login.php
<h2>Login</h2>
<div class="row">
<div class="span12">
<?php if($error==1){ ?>
<p class="alert alert-error ">
Username/Password did not match...
</p>
<?php } ?>
<p>
<form action="<?=base_url()?>index.php/users/login" method="post">
<p><input class="span3" name="username" type="text" placeholder="Username"></p>
<p><input class="span3" name="password" type="password" placeholder="Password"></p>
<p><button class="btn btn-primary" type="submit">Login</button></p>
</form>
</p>
</div>
</div>
我已经彻底检查过了,但什么也找不到……
任何帮助或信息将不胜感激,但请温文尔雅我是一个新手笑…
克里斯
发布于 2013-05-22 05:18:45
对于控制器;
试试这条线
if( count($_POST[]) > 0 ) {
或
if( $this->input->server('REQUEST_METHOD') === 'POST' ) {
而不是这行
if ($_POST){
对于模型;
// Login
function login($username,$password){
$where=array(
'username'=>$username,
'password'=>$password);
$query = $this->db->get_where('users',$where);
return $query->first_row('array');
}
以防万一,千万不要在没有加密的情况下存储密码!
https://stackoverflow.com/questions/16679499
复制相似问题