2015-02-23 164 views
2

我使用基於地址和GET方法的controll編碼PHP,使用index.php?site = filename。然後我在內容div中包括現有的filename.php。那簡直是有效的。此外,我已經得到通知DIV其中i包含數據的文件從數據庫CodeIgniter網站框架

我試圖得到類似的結果笨

html 
    head 
    /head 
    body 
     div notification bar (always on top like Material) 
     div menu (slide from left also like Material) 
     div content (depended on controller and loaded view) 
     div footer (only /body /html) 
    /body 
/html 

通過

public function __construct() 
     { 
      parent::__construct(); 
      $this -> load -> view('notification '); 
      $this -> load -> view('menu '); 
     } 

我想要做的,從模型發送數據通知視圖,但我不能在構造函數中做到這一點。另外我不想在每個控制器的方法中加載相同的視圖。我應該怎麼做?我不提供現成的解決方案,但一些想法,也許僞代碼?

或者也許這只是一個這樣的解決方案?在每種方法中加載所有需要的視圖?真?

class news extends CI_Controller 
    { 
     public function __construct() 
     { 
      parent::__construct(); 
      $this -> load -> view('header'); 
     } 
     public function index() 
     { 
      [...]//data from model 
      $this -> load -> view('notification',$Data); 
      $this -> load -> view('menu',$Permission); 
      $this -> load -> view('news',$Content); 
     } 
[...] 
+1

爲什麼不簡單地創建一個包含視圖的視圖(有點像子視圖)?這並不難,請參閱http://stackoverflow.com/questions/9402924/how-to-load-view-into-another-view-codeigniter-2-1 – SolarBear 2015-02-23 21:41:53

+0

好的,謝謝,我會這樣做,但它不能解決我在通知中的數據問題。一些通知將不活動,所以它們是如何設置的?或者我可以使用mysql查詢來設置這個視圖代碼,但這是違反MWC規則的,是不是?你怎麼想? – Bejkrools 2015-02-23 22:03:34

回答

0

我想這(對不起,拋光的話):

控制器

class uzytkownik extends CI_Controller 
    { 
     public function index() 
     { 
      $this -> load -> model('Uzytkownik_model'); 
      $DaneLogo['Tytul'] = 'Dzie z życia'; 
      $Dane = array(
      'Naglowek' => $this -> load -> view('naglowek', NULL, TRUE), 
      'Logo' => $this -> load -> view('logo', $DaneLogo, TRUE), 
      'Lista' => $this -> Uzytkownik_model -> PobierzUzytkownikow(), 
      ); 

      $this -> load -> view('uzytkownicy', $Dane); 
     } 

視圖

echo $Naglowek; 
echo $Tytul; 
echo $Logo; 

foreach ($Lista->result() as $Uzytkownik) 
{ 
    echo $Uzytkownik -> id.' '; 
    echo $Uzytkownik -> imie.' '; 
    echo $Uzytkownik -> nazwisko.'<br>'; 

} 

工作正常,但...

<head> 
    <meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8"/> 
</head> 
<body> 
<div id='logo' style='background-color: blue; wight: 100%; height: 40px;'> 
    <center> <!-- i want $Tytul HERE --></center> 
</div> 
Dzie z zycia<!-- NOT HERE -->1 Jan Kowalski<br>2 Adam Nowak<br>3 Alicja Marczak<br></div> 
</body>