【发布时间】:2018-06-06 12:43:29
【问题描述】:
我在 Codeigniter 中提交表单时遇到问题。当我单击提交按钮登录时,它会路由到这样的 URL:domain.com/www.domain.com/home/login。显然,它应该只是 www.domain.com/home/login。
这似乎与以下问题类似:Code Igniter URL appending,但该用户使用的是常规表单,而我使用的是 CodeIgniter 表单。在他的问题中,使用 CodeIgniter 表单是解决此问题的正确答案,但是,我仍然遇到与他相同的问题。
我的 base_url() 已经在配置中设置了,我都试过了
$this->load->view('/home/home');
和
$this->load->view('home/home');
在控制器功能中。我仍然每次都得到同样的东西。
即使函数是空的,并且实际上只是
public function login(){}
我仍然遇到双域问题。
因为它可能是相关的,这里是我的 .htaccess 文件:
RewriteEngine On
RewriteBase /eventCentral/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]
RewriteBase 是必要的,因为这是一个模拟站点,搭载在我的主站点上。
这里是 form_open 标签的代码:
echo form_open('home/login');
echo form_input($userNameField);
echo form_password($passwordField);
echo form_submit($submitButton);
echo form_close();
我也尝试过将表单打开标记为:echo form_open('/home/login');
它仍然给我同样的问题。
我的 base_url 是:
$config['base_url'] = 'www.redwolff.info/eventCentral';
我改变的唯一路线是
$route['default_controller'] = 'Home';
其余的都是以前的。
【问题讨论】:
-
显示生成表单打开标记的代码,或者如果您只是使用原始 HTML 显示。
-
完成。我认为这与您之前帮助我的问题有些相关。我的老师在今年早些时候向我们展示了如何设置代码点火器,但是现在课程结束了,而这在他的课堂上并没有发生,所以我完全不知道为什么现在会发生这种情况。我已经关注了他的视频来达到这一点。唯一的区别是在我们使用我们在类中构建的 linux 服务器之前,现在我正在使用 hostgator。
-
您的表单打开标签应该没问题。请你告诉我你在 config/config.php 中的 base_url 有什么。另外,您在 config/routes.php 中有任何非默认路由吗?
-
我在上面的文字中添加了它。
-
感谢@BrianGottier。这就是问题所在。
标签: php forms .htaccess codeigniter url