我是Codeigniter的新手。我一直在处理我正在进行注册/注册的表单的问题。似乎我正在使用form_open(CONTROLLER/METHOD);
错误的我已经配置了错误。
以下是我正在使用的表单:
<?php
echo form_open("main/login_validation");
echo validation_errors();
echo "<p> Email:";
echo form_input('email');
echo "</p>";
echo "<p> Password:";
echo form_password('password');
echo "</p>";
echo "<p>";
echo form_submit('login_submit', 'Login');
echo "</p>";
echo form_close();
?>
主控制器的片段:
public function login_validation () {
$this->load->library('form_validation');
$this->form_validation->set_rules('email', 'Email', 'required');
$this->form_validation->set_rules('password', 'Password', 'required|md5');
if ($this->form_validation->run()){
redirect('main/view_members');
}
else {
$this->load->view('login');
}
}
echo form_open('main/login_validation');
看起来对我不错,但是很有意思
当我测试它时,这就是我得到的:
http://localhost/main/localhost/main/login_validation
我已经用localhost替换了实际的URL,因为我不想在这里发布我的网站。 我正在使用mod_rewrite / Apache2服务器。我可以添加任何帮助,请告诉我。
答案 0 :(得分:0)
echo form_open('controller / function');
您必须使用单引号进行codeigniter语法
答案 1 :(得分:0)
看起来你可能有三个错误:
您的config.php中可能包含无效的域名/主机名(我通常将其留空或将其设置为确切的基本域名)
$config['base_url'] = ''; // leave blank to be safe or set to known hostname
或者您没有正确地呼叫/controller/method
。您需要确保上面的代码,您调用的内容位于文件夹/application/controllers/
中,控制器名称为Main
(文件:main.php)。
在Main
控制器内部,您应该有一个名为login_validation()
的函数,否则会失败。
或者最后,调用form_open("main/login_validation");
与form_open("/main/login_validation");
(注意第一个 / ?)