【发布时间】:2017-03-09 12:35:55
【问题描述】:
我在验证我的表单时遇到问题,它是一个注册表单,我有登录名和用户控制器,当我提交表单时,它会将我带到登录页面。
当我将默认控制器更改为“用户”时,它会验证表单,但当我想登录时它不起作用。我想知道是什么问题!
这是来自用户控制器的验证表单代码:
public function __construct()
{
parent::__construct();
$this->load->helper(array('form','url'));
$this->load->library(array('session', 'form_validation', 'email'));
$this->load->database();
$this->load->model('user_model');
}
function index()
{
//set validation rules
$this->form_validation->set_rules('name', 'First Name', 'trim|required|alpha|min_length[3]|max_length[30]|xss_clean');
$this->form_validation->set_rules('prenom', 'Last Name', 'trim|required|alpha|min_length[3]|max_length[30]|xss_clean');
$this->form_validation->set_rules('email', 'Email ID', 'trim|required|valid_email|is_unique[teacher.email]');
$this->form_validation->set_rules('password', 'Password', 'trim|required|matches[cpassword]|md5');
$this->form_validation->set_rules('cpassword', 'Confirm Password', 'trim|required|md5');
//validate form input
if ($this->form_validation->run() == FALSE)
{
// fails
$this->load->view('backend/user_registration_view');
}
这是视图:
<div class="panel-body">
<?php $attributes = array("name" => "registrationform");
echo form_open("user/register", $attributes);?>
<div class="form-group">
<label for="name">First Name</label>
<input class="form-control" name="name" placeholder="Your First Name" type="text" value="<?php echo set_value('name'); ?>" />
<span class="text-danger"><?php echo form_error('fname'); ?></span>
</div>
这是我测试我的应用程序的墨水,请帮我解决这个问题:
http://prof.skolarie.com(登录是默认控制器)。
我认为默认设置登录时会覆盖用户控制器!
谢谢
更新:路由文件;
$route['default_controller'] = 'login';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
您可以在下面的链接中找到代码源:
【问题讨论】:
-
您是在索引函数中定义规则并将表单数据发布到注册函数吗?
标签: php forms codeigniter validation login