2014-05-08 122 views
0

我無法加載mysql數據到視圖通過選擇請幫我找出錯誤。謝謝。無法獲取mysql數據(CodeIgniter選擇)

查看

<div class="grid"> 
<div class="row"> 
    <?php $this->load->view('admin/admin_topmenu.php'); ?> 
</div> 
<div class="row"> 
    <div class="span10 box" style="padding: 10px;"> 


     <p>Recent Messages</p> 
     <table class="table hovered"> 
      <thead> 
      <tr class="selected"> 
       <th class="text-left">Name</th> 
       <th class="text-left">Email</th> 
       <th class="text-left">Phone</th> 
       <th class="text-left">Message</th> 
      </tr> 
      </thead> 
      <tbody> 
      <?php echo form_open('admin_forms/inbox') ?><!-- start of the form --> 
      <?php if(isset($records)) : foreach($records as $row) : ?> 
      <tr> 
       <td class="right"><?php echo $row->contactus_name; ?></td> 
       <td class="right"><?php echo $row->contactus_email; ?></td> 
       <td class="right"><?php echo $row->contactus_phone; ?></td> 
       <td class="right tertiary-text-secondary text-justify"><?php echo $row->contactus_comment; ?></td> 

      </tr> 
      <?php endforeach; ?> 
      <?php endif; ?> 
      <?php echo form_close(); ?><!-- END of the form --> 
      </tbody> 
      <tfoot></tfoot> 
     </table> 
    </div> 

    <div class="span3"> 
     <nav class="sidebar light"> 
      <ul> 
       <li> 
        <a href="#"> 
         <i class="icon-home"></i> 
         Inbox <strong>(5)</strong> 
        </a> 
       </li> 
       <li> 
        <a href="#"> 
         <i class="icon-home"></i> 
         Send 
        </a> 
       </li> 
       <li> 
        <a href="#"> 
         <i class="icon-home"></i> 
         Newsletter/Ad 
        </a> 
       </li> 
      </ul> 
     </nav> 
    </div> 
</div> 

控制器

<?php class Admin extends CI_Controller { 
function index() 
{ 

} 
function inbox() 
{ 
    $data = array(); 
    if($query = $this->mod_contactus->get_records()) 
    { 
     $data['records'] = $query; 
    } 
    $this->load->view('admin/admin_messages',$data); 
} 

}

模型

<?php 
class Mod_contactus extends CI_Model 
{ 

    function get_records() 
    { 
     $query = $this->db->get('tbl_contactus'); 
     return $query->result(); 
    } 


    function add_record($data) 
    { 
     $this->db->insert('tbl_contactus', $data); 
     return; 
    } 


    function update_record() 
    { 
    } 

} 

當我轉到頁面的源代碼時,單擊表單發佈方法它會給我404頁面未找到錯誤。

回答

0

我假設你能夠到達頁面,並在表單提交時收到錯誤。除非你有你的application/config/routes.php文件中的特殊路線設置我相信在你看來

<?php echo form_open('admin_forms/inbox') ?><!-- start of the form --> 

改變這一行

<?php echo form_open('admin/inbox') ?><!-- start of the form --> 

會做的伎倆。

我這樣說是因爲您的控制器的名字是Admin並以調用它(默認),你將不得不使用的URL admin而不是admin_forms

+0

它不工作:(我感動的收件箱功能來管理,當我去的頁面的源並單擊窗體操作鏈接。它的加載數據在源代碼中,但不在html視圖中 –

+0

你的意思是它從控制器加載數據,但不是從視圖中加載數據?你的視圖是位於'application/views/admin/admin_messages.php'還是'application/views/admin_messages.php'? –

+0

applicat ion/views/admin/admin_messages.php –

0

你需要獲取結果,

因此該行:

其實,你的變量$records是一種資源,而不是一個結果集。

<?php if(isset($records)) : foreach($records as $row) : ?>

所以,請使用此資源,然後獲取記錄。

它應該成爲:

<?php if(isset($records)) : foreach($records->result as $row) : ?>

<?php if(isset($records)) : foreach($records->result() as $row) : ?>

+0

它不是我認爲的問題,因爲我使用<?php if(isset($ records)):foreach($ records as $ row):?> before –

+0

情況並非如此,在模型中他有'return $ query-> result();'這會處理這個問題。 –