如何将视图变量传递给codeigniter中的控制器?

时间:2011-06-26 12:46:31

标签: php model-view-controller codeigniter

我的观点: -

 <html>
<?= link_tag(base_url().'css/simple.css'); ?>
<body>
<?php $this->load->helper('form'); ?>
<?php $this->load->view('commentform'); ?>
<?php $id=$this->uri->segment(3);?>
<?php echo $id;?>
</body>
</html>

我想在我的控制器中使用变量$id。我顺便使用codeigniter,并且是初学者。我很感激任何帮助。

3 个答案:

答案 0 :(得分:1)

你不应该从View调用$ id,你应该在控制器级别获取它并将其传递给View。

正如Bulk所说。你的网址就是这样的  www.mysite.com/thecontrollername/thefunction/id

例如你的控制器如果在家,并且其中有一个show_id函数,你的视图是调用show_id_view.php。

你会得到这样的网址:www.mysite.com/home/show_id/id

您在家中的功能将读取ID“

在您的家庭控制器中:

function show_id(){
$id=$this->uri->segment(3);
$view_data['id'] = $id;
$this->load->view('show_id_view',$view_data);  
}
视图中的

(show_id_view):

<?php echo $id ?>

别的......

希望这会有所帮助。

答案 1 :(得分:0)

嗯,理想情况下你不会这样做。您应该首先在控制器中分配变量,并将其传递给视图,如果您需要在那里使用它。

$data['id'] = $this->uri->segment(3);
$this->load->view('view_file', $data); 

$ id也可以在您的视图中使用。

答案 2 :(得分:0)

在我看来,我添加了链接

 <li><a href="<?php echo base_url()?>link/show_id/mantap"> coba </li> 

在我的 link.php 控制器中我添加了函数show_id

function show_id(){
        $id=$this->uri->segment(3);
        $data['coba'] = $id;
        $this->mobile->view('**daftarmember_form**',$data);

在我的下一个视图中 daftarmember_form.html

<?php echo $id;?>

他们打印mantap,