0

我正在尝试使用 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根本不验证数据的地方。

4

1 回答 1

0

form_open函数使用base_url位于 中的 的值application/config/config.php。看来您base_url的设置不正确或根本没有设置。该base_url值应设置为安装过程的一部分。如果未设置,则 CodeIgniter 将猜测正确的值:

如果未设置,那么 CodeIgniter 将猜测您安装的协议、域和路径。


设置base_url: openapplication/config/config.php并为您的站点输入base_url值。要输入的值通常是您的index.php文件所在的位置,带有尾部斜杠

您的 CodeIgniter 根的 URL。通常这将是您的基本 URL,带有斜杠

例如:

$config['base_url'] = 'http://www.yoursite.com/';
于 2013-05-10T19:13:17.363 回答