CodeIgniter form_validation无法正常工作

莫希特·加格(Mohit Garg)

我是php新手。我的设置是在ubuntu 14.04 LTS上点亮。我已经通过在线教程创建了一个Login系统。我已经在autoload.php文件中进行了更改

$autoload['libraries'] = array('database', 'form_validation');
$autoload['helper'] = array('url', 'form');

出乎意料的是,当用户名和密码字段都保留为空,并且按下登录按钮时,没有错误(“用户名字段为空” ...)显示。此外,在Mozilla Firefox中,按下按钮后页面保持不变,而在Google Chrome中,页面加载至about:blank。

如果我在问题格式中输入有误,请提供帮助和抱歉。

我的控制器:LoginController.php

<?php

class LoginController extends CI_Controller{

public function index(){

    $this->load->view('login');
}

public function checkLogin(){
    $this->load->library('form_validation');
    $this->form_validation->set_rules('username' , 'Username' , 'required|valid_email');
    $this->form_validation->set_rules('password' , 'Password' , 'required|callback_verifyUser');

    if($this->form_validation->run() == false){
        $this->load->view('login');

    }else{
        redirect('HomeController/index');
    }

}
public function verifyUser(){
    $name = $this->input->post('username');
    $pass = $this->input->post('password');

    $this->load->model('LoginModel');

    if($this->LoginModel->login($name, $pass)){
        return true;
    }
    else{
        $this->form_validation->set_message('verifyUser', 'Incorrect email or password. Please try again.');
        return false;
    }
}

}

我的查看文件:login.php

<!DOCTYPE HTML>
<html>
    <head>
        <title>CI Login System</title>
    </head>
    <body>
        <h1>Login</h1>
        <?php echo validation_errors(); ?>
        <?php echo form_open('LoginController/checkLogin'); ?>
        Username<br/>
        <input type="text", name="username"/><br/>
        Password<br/>
        <input type="text", name="passsword"/><br/>
        <input type="submit", value="Login", name="submit"/>
        </form>
    </body>
</html>
菲特

您的错误在于HTML代码中。

Username<br/>
<input type="text", name="username"/><br/>
Password<br/>
<input type="text", name="passsword"/><br/>
<input type="submit", value="Login", name="submit"/>

这是错误的:

  1. 您不要在HTML标记中添加逗号。
  2. 密码输入应为密码类型。
  3. 您输入的密码名称有误s,考虑到以下这一行,它有一个多余的地方:

    $pass = $this->input->post('password');

测试一下:

<input type="text" placeholder = "Username" name="username" required/><br>
<input type="password" placeholder = "Password" name="password" required/><br>
<input type="submit" value="Login" name="submit"/>

我已经编辑了答案以插入required属性。

但是兼容性并不像应有的那样巨大:

在此处输入图片说明

您还可以使用Javascript表单验证方法

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

CodeIgniter Form_validation无法正常工作

来自分类Dev

form_validation CodeIgniter

来自分类Dev

Codeigniter form_validation始终返回false

来自分类Dev

Codeigniter:Form_validation始终返回FALSE

来自分类Dev

在CodeIgniter中正确使用form_validation

来自分类Dev

Codeigniter form_validation始终返回false

来自分类Dev

Codeigniter:Form_validation始终返回FALSE

来自分类Dev

codeigniter form_validation返回false

来自分类Dev

使用 ajax 的 codeigniter form_validation

来自分类Dev

CodeIgniter form_validation没有显示错误

来自分类Dev

在Codeigniter的form_validation中使用语言文件

来自分类Dev

.htaccess无法正常工作-CodeIgniter

来自分类Dev

CodeIgniter Ajax无法正常工作

来自分类Dev

Codeigniter路由无法正常工作

来自分类Dev

CodeIgniter CSS无法正常工作

来自分类Dev

Codeigniter分页无法正常工作

来自分类Dev

Codeigniter Addrow无法正常工作

来自分类Dev

Codeigniter 分页无法正常工作

来自分类Dev

为什么我的form_validation无法正常工作?错误:字段表单未正确填写

来自分类Dev

Codeigniter DB语言扩展无法正常工作

来自分类Dev

Codeigniter中的语言无法正常工作

来自分类Dev

重定向301无法正常工作codeigniter

来自分类Dev

Codeigniter-分页无法正常工作

来自分类Dev

Codeigniter user_agent无法正常工作

来自分类Dev

Codeigniter查询构建器无法正常工作

来自分类Dev

CodeIgniter Flexi Auth演示无法正常工作

来自分类Dev

托管时Codeigniter无法正常工作

来自分类Dev

Codeigniter简单的foreach循环无法正常工作

来自分类Dev

Codeigniter Ajax autocomplite无法正常工作