2017-01-04 71 views
0

A PHP Error was encountered通訊錯誤:()提供的foreach無效參數

Severity: Warning

Message: Invalid argument supplied for foreach()

Filename: views/editnewsletters.php

Line Number: 55

Backtrace:

File: C:\Program Files (x86)\EasyPHP-DevServer-14.1VC9\data\localweb\companygiondaci\application\views\editnewsletters.php Line: 55 Function: _error_handler

File: C:\Program Files (x86)\EasyPHP-DevServer-14.1VC9\data\localweb\companygiondaci\application\controllers\Cpages.php Line: 533 Function: view

File: C:\Program Files (x86)\EasyPHP-DevServer-14.1VC9\data\localweb\companygiondaci\index.php Line: 315 Function: require_once

視圖/ editnewsletters.php

<?php if($newsl) { ?> 
        <?php foreach ($newsl as $newsl_item): ?> 

        <table border="0" style="width: 100%; height: 90px;"> 
         <tr> 
          <td>Newsletter Name:</td> 
          <td><input type="text" name="newsletter" value="<?php echo $newsl_item->newsl_name; ?>"></td> 
         </tr> 
         <tr> 
          <td>Newsletter Content:</td> 
          <td><textarea><?php echo $newsl_item->newsl_content; ?></textarea></td> 
         </tr> 
         <tr> 
          <td></td> 
          <td><input type="submit" class="edit" value="SUBMIT"/></td> 
         </tr> 
        </table> 

        <?php endforeach; }?> 

線55:


控制器/ cpages.php

public function editnewsletter() { 


    $data['success_message'] = ''; 

    $newsl_id = $this->uri->segment(3); 

    $data['newsl'] = $this->Mpages->update_newsletter($newsl_id); 

    $this->load->view('editnewsletters', $data); 


} 

型號/ mpages.php

public function update_newsletter($newsl_id) 
{ 

    $data = array(
     'newsl_name' => $this->input->post('newsl_name'), 
     'newsl_date' => $this->input->post('newsl_date'), 
     'newsl_content' => $this->input->post('newsl_content') 
    ); 

    $this->db->where('newsl_id', $newsl_id); 
    $query = $this->db->update('newsletter', $data); 

    return $query; 

} 
+0

從你提供它的代碼看起來,你returing更新的查詢結果,我懷疑有沒有數據集中行(IE)結果()在它...你可以重複內mpages和表演$查詢在O/p –

+0

也許回聲$查詢1.我看到一個「1」的頁面之間。 – David

回答

0

因爲你的更新查詢返回boolean值。如果更新成功查詢那麼你$查詢變量返回TRUE。如果你從表中返回你更新的行,然後添加這段代碼。

$this->db->where('id', $newsl_id); 
$query = $this->db->get('newsletter'); 
$data['newsl'] = $query->row(); 
+0

返回什麼? – David

+0

返回布爾值 – Zamir10

+0

怎麼樣?像返回$ data ['newsl']; ? – David

相關問題