2012-04-21 61 views
1

使用CodeIgniter我试图创建一个链接,用户可以在视图中单击以向他们显示我的数据库中记录的详细信息。使用CodeIgniter的参数链接到控制器功能

在ASP.NET MVC3用C#我会做与@Html.ActionLink("Controller", "Action", new { id = item.Id})

这是我的会话控制器指数()函数

public function index() 
{ 
     $data['sessions'] = $this->session_model->get_sessions(); 

     $this->load->view('_header'); 
     $this->load->view('session/index', $data); 
     $this->load->view('_footer'); 
} 

这是该指数查看它加载,我希望能够点击链接进入,进入()函数

<table> 

<th>Session Name</th> 
<th>Description</th> 
<th>Host</th> 
<th></th> 

<?php foreach ($sessions as $session_item): ?> 
    <tr> 
     <td> <?php echo $session_item['sessionName'] ?> </td> 
     <td> <?php echo $session_item['sessionDesc'] ?> </td> 
     <td> <?php echo $session_item['adminName'] ?> </td> 
     <td> <a id="enterSession" href=<?php echo site_url("session/enter" + $session_item['id']) ?> >Enter</a></td> 

    </tr> 
<?php endforeach ?> 

输入会话指向我的网址“http://192.168.1.36/index.php/1”(如果我的项目的ID是1),而我期望“http://192.168.1.36/index.php/会议/输入/ 1"

如何,我可以把它称之为输入()函数还会话控制器(如下图所示)

public function enter($id) { 

     $this->load->view('_header'); 
     $this->load->view('session/enter'); 
     $this->load->view('_footer'); 
    } 
+0

为了让url指向正确的位置 - 在href中,尝试在'“session/enter”'中添加一个尾部的斜杠。或者传递一个类似于'$ segments = array('session','enter',$ session_item ['id']);'到'site_url()'的数组。 – jleft 2012-04-21 22:14:19

回答

0

似乎是在字符串连接一个错字任何想法在你的PHP代码中。也许它会工作使用:

site_url("session/enter" . $session_item['id']) 

...而不是两个字符串之间的+迹象。

关于第二个问题 - 它看起来是正确的。它是否未能调用session控制器的enter()函数通过$id作为参数(假设URL是正确的)?

+0

辉煌,谢谢。我确实需要将'+'改为'.'哦,并添加一个/字符。所以这现在可以:) '​​ >Enter' – Leanne182x 2012-04-21 22:25:46

相关问题