如何在codeigniter中的产品页面中添加动态产品标题

时间:2013-11-04 06:37:18

标签: php mysql codeigniter

我有一个产品表(tbl_product),其产品数据包含product_id,product_name,

当我可以使用product_id查看产品详细信息时,我想在标题栏中显示产品名称。但我没有那样做。请帮我详细说明。

控制器:::

    public function product_details($product_id)
{
        $data=array();
        $data['result']=$this->home_model->selectProductByProductId($product_id);
        $data['banner']=FALSE;
        $data['maincontent']=$this->load->view('single_product', $data, TRUE);

        $data['content']=$this->home_model->getContent();

        $data['title']= $content;
        $this->load->view('home', $data);
}

模型:::

public function getContent()
{
    $this->db->select('tbl_product.product_name');
    $this->db->from('tbl_product');
    $this->db->where('product_name', $product_name);
    $product = $this->db->get()->result_array();
}

查看:::

 <head>
       <title> <?php echo $title; ?> </title>
 </head>

当我可以使用product_id查看产品详细信息时,我想在标题栏中显示产品名称。但我没有那样做。请帮我详细说明。

2 个答案:

答案 0 :(得分:1)

对于CodeIgniter,你应该记住,。

$data[]位于数组中。因此,您可以在控制器中的$data中设置元素,并在您的视图中检索$data数组。你不能使用

$data['content']=$this->home_model->getContent();
$data['title']= $content;

在您的控制器中。

如果你知道你的`product_id',那么每个产品应该是不同的url。

使用ulr helper并在需要查看产品时编写此代码

redirect('single_product/'.$product_id)

现在使用uri class并检查您的product_id

if($this->uri->segment(2)){
   $data['title']=$this->home_model->get_title($this->uri->segment(2));
.........................
.......

}

并在模型中创建get_title方法

    public function get_title($product_id)
    {
   $query=$this->db->query("select product_name from tbl_product where product_id='$product_id'");
        $result = $query->row();
       if(isset($result)){
         $title=$result->product_name;
          return $title;
         }
     }

答案 1 :(得分:0)

请在您的视图中进行以下更改。如果您查看控制器代码,则将阵列(从您的模型)返回到$ data ['content'],因此您的视图应如下所示

  <head>
        <title> <?php echo $content[0]; ?> </title>
  </head>