2013-09-30 51 views
0

您好,我是CodeIgniter中的一个初学者。我在Ci中创建一个小型应用程序,用于从数据库加载我的菜单。 1.数据库包括3个字段(ID,MENU_NAME,menu_link)CodeIgnitor动态菜单加载器不能正常工作

2.I已经创建了库的功能通过加载所述程序库

从分贝

3.Created控制器获取数据的

附上其中我已经建立

代码对于库 文件夹结构:::: ----库的代码/ functions.php的

function getMenus() 
{ 
    $arrRow =array(); 
    $sql = "select * from tbl_menus "; 
    $res =mysql_query($sql); 
    if(mysql_num_rows($res) >0) { 
     while($row= mysql_fetch_object($res)){ 
       $arrRow[] =$row; 
     } 

    } 

} 

控制器代码

public function index() 
{ 
    $val_menu = $this->input->post('menu_Name'); 
    $val_link= $this->input->post('menu_link'); 
    $query=$this->db->get_where('tbl_menus',array('menu_Name'=>$val_menu,'menu_link'=>$val_link)); 

    if ($query->num_rows() > 0) 
    { 
    $arrRow=$query->row_array(); 
    $data=$arrRow; 
    } 
    $data=array('menu_Name'=>$data,'menu_link'=>$data); 
    $this->load->helper('url'); 
    $this->load->database(); 

    $this->load->view('Header'); 
    $this->load->view('SideMenu',$data);  
    $this->load->view('Pages/MainPage',$data); 
    $this->load->view("Footer"); 
} 

我查看代码

<?php 

$arrMenus=array(); 
$arrMenus =$this->functions->getMenus(); 

?> 

<div class="container"> 

<div class="sidebar1"> 



<?php if(count($arrMenus) >0) { 
foreach($arrMenus as $key_menu=>$val_menu) { 
$menu_link =$val_menu['menu_link'];?> 
<ul class="nav"> 
//Before Edit 
<li><a href="<?=site_url()?>/<?=$menu_link?>" class="lnk"><?=$val_menu['menu_name']?> 
//After Edit 
<li><a href="<?=site_url()?>/<?php echo $menu_link?>" class="lnk"><?php echo $val_menu['menu_name']?></a></li> 
</a></li> 
</ul> 

的print_r()导致

Array ([menuId] => 1 [menu_Name] => UserHome [menu_link] => Pages/MainPage) 

的观点是不工作properly..ie查看页面不显示菜单.. .so我在控制器中使用了print_r($ arrMenus); ..它显示数据...但菜单链接留空.Print_r($ arrMenus)在视图页面显示错误,表示转换问题

+1

它是如何工作不正常?解释问题。 –

+2

先学习CI'教程。 http://ellislab.com/codeigniter/user-guide/tutorial/ –

+0

视图无法正常工作..ie视图页面不显示菜单...所以我用print_r($ arrMenus); ..它显示数据...但菜单链接留空 –

回答

0

试试这个

foreach($arrMenus->result() as $key_menu=>$val_menu) 
+0

你好,我已经试过这个...但没有显示..有没有什么办法来检查是否db值是在视图页上我问print而不是print_r() –