2017-04-26 96 views
1

这是我第二次使用CodeIgniter,有一件事情不成功。从我的主页发送一个变量到我的标题。这是我的控制器:如何通过控制器发送页面到页面的变量

public function index() 
{ 
    $data['data'] = $this->BookModel->get_author(); 
    $this->load->view('templates/header', $data); 
    $this->load->view('home/index'); 
    $this->load->view('templates/footer', $data); 
} 

正如你看到的,它装载我header,我index和我footer

这是我的索引文件:

<?php 
$title = "Books"; ?>  
<div class="content"> 
<table> 
... 

,这是我的部首:

<html> 
<head> 
    <meta charset="utf-8"> 
    <title>Author plaza</title> 
    <link rel="stylesheet" type="text/css" href="<?php echo base_url('assets/css/style.css') ?>"> 
</head> 
<body> 

    <div class="website"> 
     <div class="header"> 
      <h1 class="kopje"><?php echo $title; ?> </h1> 
      <img class="boekje" src="<?php echo base_url('assets/img/book.gif')?>"> 
     </div> 

可变需要$title使用在我的headerecho作为H1打印。因为我知道这是正确的方式。但它不会工作。

有人可以帮助我吗?

回答

0

的问题是你定义标题下方的标题所以它不是在标题中使用你需要做我定义什么它的控制器,并把它传递给意见$data['title']="Your Title"

public function index() 
{ 
    $data['data'] = $this->BookModel->get_author(); 
    $data['title]="your Header"; 
    $this->load->view('templates/header', $data); 
    $this->load->view('home/index',$data); 
    $this->load->view('templates/footer', $data); 
} 

in your view files you can access the key "title 
+0

Yeas Thanx。这对我有用! –

0

变量正在Header中使用,而它仅在index中声明。您正尝试在分配变量之前使用该变量。

理想情况下,此数据应该在BookModel,然后从那里引用。

或者,将变量设置为Header,然后在index中使用它。

+0

这不是问题:p我评论它查看错误 –

+0

我更新了答案:) – 2017-04-26 12:23:51

0

为什么你不从控制器传递它?

$data['data'] = $this->BookModel->get_author(); 
$data['title'] ="Books"; 
    $this->load->view('templates/header', $data); 
    $this->load->view('home/index',$data); 
    $this->load->view('templates/footer', $data); 

在任何观点:

echo $title; 
0

变化$data['data']$data['titel']在控制器中的索引功能

0

您可以通过发送单独$ Titel的使用这样变量 $数据[” titel'] =“titel”;

<h1 class="kopje"><?php echo $titel; ?> </h1> 

或 Titel的是数据变量,你可以使用这样

<h1 class="kopje"><?php echo $data['titel']; ?> </h1> 
0

如果你想显示你应该使用控制器不同的页面自定义标题将标题传递给视图。在您的代码中,您将get_author()传递给变量$data['data'],因此您可以使用$data从视图中使用作者数据,因为您已通过$data阵列中的data密钥。同样,你也可以使用这个语句来标题,也可以使用$data['title'] = "Book Title",你可以在页面上打印标题。通过查看页面

public function index() 
{ 
    $data['data'] = $this->BookModel->get_author(); 
    $data['title'] = "Book Title" 
    $data['what_ever_print'] = "Pass value from here and access from view like echo $what_ever_print" 
    $this->load->view('templates/header', $data); 
    $this->load->view('home/index', $data); 
    $this->load->view('templates/footer', $data); 
} 

上呼应$title在视图中,您可以打印这样

<h1 class="kopje"><?php echo $title; ?> </h1> 

或者如果你想打印在标题标签,你可以像下面

<title><?php echo $title; ?> </title> 
相关问题