我正在尝试使用CodeIgniter创建用户登录系统。这是下面的表单代码(登录视图):
<?php
echo form_open('main/login_validation');
echo validation_errors();
echo "<p>Email<br/>";
echo form_input('email', $this->input->post('email'));
echo "</p><br/>";
echo "<p>Password<br/>";
echo form_password('password');
echo "</p><br/>";
echo "<p>";
echo form_submit('login_submit', 'login');
echo "</p>";
echo form_close();
?>
当我从浏览器查看源代码时,我得到了
"form action="http://site.com/beta/?main/login_validation" method="post" "
如您所见,我在?
之后收到了问号“beta/
”。
这也影响了进一步的程序,即它被重定向到site.com/beta/?main/login_validation
,而根本不验证数据。
答案 0 :(得分:0)
form_open
函数使用位于base_url
的{{1}}值。您的application/config/config.php
似乎未正确设置或设置完毕。 base_url
值应设置为installation process的一部分。如果未设置,则CodeIgniter将猜测正确的值:
如果未设置,则CodeIgniter将猜测协议域 和安装的路径。
设置base_url
:打开base_url
并输入您网站的application/config/config.php
值。输入的值通常是base_url
文件所在的位置,尾部斜杠:
CodeIgniter根目录的URL。通常,这将是您的基本URL, 带尾部斜杠
例如:
index.php