php - Codeigniter 不验证登录表单
问题描述
我对 codeigniter 已经很熟悉了,所以我对我的代码很有信心。但是,我的表单验证不起作用。它永远不会通过验证,也永远不会显示任何错误。我已经抛弃了CI
实例,可以看到我的验证设置正确,但没有运气。
这是我的控制器中的功能
$this->load->helper(array('form', 'url', 'html'));
$this->load->library('form_validation');
$data = array();
$this->form_validation->set_rules('email', 'Email', 'trim|required');
$this->form_validation->set_rules('password', 'Password', 'trim|required');
$validation_errors = validation_errors();
if( $validation_errors !== FALSE ):
$data["validation_errors"] = $validation_errors;
endif;
if ($this->form_validation->run() == FALSE):
$this->load->view('common/head-auth', $data);
$this->load->view('pages/page-auth-login', $data);
$this->load->view('common/foot-auth');
else:
$this->load->model("site/users_model");
$this->users_model->login();
endif;
这是我的视图文件
<main class="auth">
<header id="auth-header" class="auth-header"></header>
<?php
$atts = array("class" => 'auth-form');
echo form_open('auth/login', $atts);
?>
<div class="form-group">
<img src="<?php echo base_url( "assets/images/rplogo.png" ); ?>" alt="" width="100%">
</div>
<?php
if( isset( $validation_errors ) ):
$error_messages = "<div class=\"alert alert-danger alert-dismissible fade show\">";
$error_messages .= "<button type=\"button\" class=\"close\" data-dismiss=\"alert\">×</button>";
$error_messages .= $validation_errors;
$error_messages .= "</div>";
echo $error_messages;
endif;
?>
<div class="form-group">
<div class="form-label-group">
<input type="text" id="inputEmail" class="form-control" placeholder="Email Address" name="email" value="<?php echo set_value('email'); ?>">
<label for="inputUser">Email Address</label>
</div>
</div>
<div class="form-group">
<div class="form-label-group">
<input type="password" id="inputPassword" class="form-control" placeholder="Password" name="password">
<label for="inputPassword">Password</label>
</div>
</div>
<div class="form-group">
<button class="btn btn-lg btn-primary btn-block" type="submit">Log In</button>
</div>
<div class="text-center pt-3">
<a href="auth-recovery-password.html" class="link">Forgot Password?</a>
</div>
</form>
<footer class="auth-footer"> © 2019 All Rights Reserved. </footer>
是的,我在没有解决方案的情况下浏览了有关此主题的所有其他帖子。
提前致谢
解决方案
if ($this->form_validation->run() == FALSE):
$validation_errors = validation_errors();
if( $validation_errors !== FALSE ):
$data["validation_errors"] = $validation_errors;
endif;
$this->load->view('common/head-auth', $data);
$this->load->view('pages/page-auth-login', $data);
$this->load->view('common/foot-auth');
else:
$this->load->model("site/users_model");
$this->users_model->login();
endif;
推荐阅读
- reactjs - 打开 Chrome 开发者工具会改变页面的呈现方式
- json - 缺少属性 编辑 json 文件时没有可用的快速修复
- python - 将假期列添加到熊猫数据框
- javascript - Request.files 返回空
- java - Java Web 项目 - Tomcat 错误 404 Servlet
- c++ - 我应该如何解除分配使用新存储在 std::stack 上的指针
- python - Python中字符串的时间复杂度
- php - 如何更改 URL 格式后分页 Wordpress (Wp_Link_pages)
- java - Android:使用 CilpDrawable 水平裁剪所选图像不起作用?
- javascript - 使画布适合视口但保持图像分辨率