2013-10-23 25 views
0

在CodeIgniter中,我设计了一个页面,其中有一个登录表单和一个简单的主页。 验证我只做客户端验证。codeigniter中的模型

视图的login.php: -

<form name="login" id="login" action="<?php echo base_url() ?>login/success" onsubmit="return validatelogin()" method="post"> 

... HTML

<input type="text" id="username" name="username" /> 
    <input type="password" id="passwrd" name="passwrd"> 

JavaScript验证在视图页面 “的login.php”,

    function validatelogin(){ 
        var x=document.forms["login"]["username"].value; 
        var y=document.forms["login"]["passwrd"].value; 
        if (x==null || x=="") 
        { 
         alert("First name must be filled out"); 
         return false; 
        } 
        if (y==null || y=="") 
        { 
         alert("Password field must be filled out"); 
         return false; 
        } 
        if(x!="monisha" && y!="monisha"){ 
         alert("Username and Password incorrect"); 
         return false; 
        } 
        return true; 
       } 

控制器 - 登录.php: -

 class Login extends CI_Controller { 
     function __construct() { 
      parent::__construct(); 
      $this->load->helper('url'); 
      $this->load->library('session'); 
     } 
     function index(){ 
      $this->load->view('login'); 
     } 
     function success() { 
     $data = array('username' => "monisha"); 
      $this->session->set_userdata($data); 
      redirect ('home'); 
     } 

    } 

我创建了“login”表,它具有用户名和密码字段。

我需要使用数据库和数据库查询来验证它。任何人都可以帮助我完成控制器文件和视图页面所做的所有更改,以完成此操作。

回答

1

学会form validationCI第一! http://ellislab.com/codeigniter/user-guide/libraries/form_validation.html
你需要相应地改变它。
在控制器:

$this->load->helper(array('form')); #no need to do this if already loaded 
$this->load->library('form_validation'); 

$this->form_validation->set_rules('username', 'Username', 'required||is_unique[table_name.column_name]'); 
$this->form_validation->set_rules('passwrd', 'Password', 'required'); 
if ($this->form_validation->run() == FALSE) 
{ 
    $this->load->view('view_name'); 
} 
else 
{ 
    redirect('controller/function', 'refresh'); 
} 

鉴于页:

<?php echo validation_errors(); ?> 
+0

谢谢Nil'z的那种反应!我会试试这个。 – Monisha