Codeigniter重定向附加到最后一个URL

时间:2012-02-29 22:08:35

标签: php codeigniter

我正在尝试在用户成功登录时重定向:

if (!$userID) {
    $this->session->set_flashdata('login_error', TRUE);
} else {
    $this->session->set_userdata(array(
        'logged_in' => TRUE,
        'userID' => $userID,
        'username' => $username
    ));
    redirect("welcome_page");
}

但是,新链接是这样的:

enter image description here

我希望它是localhost/pasaj/,我不知道,但它会附加到前网址。

我的base_url在config.php

中声明
$config['base_url'] = 'http://localhost/pasaj/';

这是登录表单的开头标记:

<form method="post" id="formSubmit" name="fSubmit" action=<?php base_url(); ?>"kayit/kayitOnay/">

然而,它使得网址如下:

enter image description here

3 个答案:

答案 0 :(得分:4)

首先,我不确定你为什么要将代码包装在![ ][1]中。我无法想象在数组中包装代码的目的是什么,我不认为这有助于你的问题。

我相信@Eric Cope是对的,您在application / config / config.php中的$config['base_url']可能不正确。您可能已将其键入$config['base_url'] = 'localhost/pasaj',但您希望它看起来更像$config['base_url'] = 'http://localhost:81/pasaj/'。这可能是导致您的重定向将URL附加到现有请求而不是请求完整的绝对URL的原因。

答案 1 :(得分:0)

我认为CI正在将您的重定向作为相对URI读取。尝试重定向到"/welcome_page"

答案 2 :(得分:0)

在configs / config.php中检查您的网址。另外,如果会话值不正确,请仔细检查“welcome_page”是否未重定向。重定向可能是罪魁祸首。