0

我正在尝试使用外部 js 文件重定向到控制器,以便我的 url 地址栏看起来像 [这不是链接] (http:/project/index.php/TravellerController/create/1) 我在 javascript 中的代码看起来像这样:

u55.style.cursor = 'pointer';
$axure.eventManager.click('u55', function(e) {

if (true) {
self.location.href=$axure.globalVariableProvider.getLinkUrl('TravellerController');

}
});

u55 是我的“主页”视图文件中链接的 ID,我的 TravellerController 如下所示:

<?php
class TravellerController extends CI_Controller {
public function index()                                        
{
$data=$this->get_data();
}
function get_data(){
*some code...*
redirect('TravellerController/create/'.$data);
{
function create(){
*some code...*
}
}
?> 

因此,如果我单击该链接,我的 url 地址字段将如下所示:

[这不是链接] (http://project/index.php/home/create/TravellerController)

但我希望它看起来像这样:

[这不是链接] (http://project/index.php/TravellerController/create/1)

4

1 回答 1

0

从我的角度来看,您没有根据用户 ID 从数据库中获取登录用户。当用户登录时,您将值存储在会话中,这很好,但是您需要在数据库中找到登录的用户。

向您的模型添加新功能:

function getUser($userid) {
    $this->db->select('*');
    $this->db->from('profile');
    $this->db->where('id', $userid);
    $query = $this->db->get()->result();
    return $query;
}

在您的控制器更改中:

$data['info'] = $this->profileModel->get_all_info();

$data['info'] = $this->profileModel->getUser($session_data['id']);

我不完全确定你的 2 个表,所以上面的代码基本上是一个例子。如果您的用户名在表中是唯一的,您还可以使用它从数据库中获取正确的用户。

我希望这能有所帮助。

于 2013-05-07T13:24:12.220 回答