无法通过视图中的按钮将ID传递给Codeigniter中的控制器

时间:2018-10-22 16:42:50

标签: php codeigniter

所以我试图将ID从视图中创建的链接传递给我的控制器方法,但是我得到了未标识的变量ID的错误

下面是视图中的链接

<a href="<?php echo base_url();?>doctors/display_schedule/<?php echo $id['d_id']; ?>" >set schedule</a>

这是控制器方法:

public function display_schedule($d_id)
    {
        $data['id'] = $this->doctor_model->get_info_by_id($d_id);
        $this->load->view("doctors_schedule_view",$data);
    }

ps,如果您想看看我的模特,请告诉我

3 个答案:

答案 0 :(得分:0)

以这种方式传递数据时,无论变量名是什么,都需要在控制器中显式分配变量,否则我将保持不确定状态。

我们假设:

<a href="<?php echo base_url();?>doctors/display_schedule/<?php echo $id['d_id']; ?>" >set schedule</a>

指向doctors/display_schedule/1234

因此,如果要使用1234,则需要启用URL帮助程序并将其添加到控制器的display_schedule方法中:

$d_id = $this->uri->segment(3);

通过这种方式,在第三个uri段中传递给控制器​​的所有内容都将分配给控制器中的$d_id

请注意,在将输入分配给变量后,需要对输入进行清理,以防止恶意使用,例如代码注入等。

答案 1 :(得分:0)

为什么不尝试,

控制器:

public function display_schedule($d_id)
    {
        $getData = $this->doctor_model->get_info_by_id($d_id);
        $data['id'] = $getData['d_id'];
        $this->load->view("doctors_schedule_view",$data);
    }

查看:

<a href="<?=base_url();?>doctors/display_schedule/<?=$id;?>" >set schedule</a>

答案 2 :(得分:0)

尝试一下:设置true

$this->load->view("doctors_schedule_view",$data,true);