2017-08-07 78 views
0

我正在使用foreach顯示我的詳細數據。昨晚的細節顯示。當我編輯另一個函數的另一個代碼(不是這個細節函數)時,我再次嘗試了細節函數,它沒有顯示任何內容,只是空白。
我不知道什麼是錯的,因爲沒有消息錯誤出現。

這是我的控制器的細節功能

function getDetail($no_form){ 
    $data['detail'] = $this->m_read->getDetail($no_form)->result(); 
    $this->load->view('haha', $data); 
} 

和我的模型細節功能

public function getDetail($no_form) { 
    $this->db->select('input_pen.no_form, input_pen.no_obs, input_pen.catatan, input_pen.tgl_kun, 
         peneliti.inisial, 
         bps.kode_bps, 
         kontak.no_kon, kontak.jabatan, kontak.nama, kontak.telp, 
         lokasi.no_lok, lokasi.kabu, lokasi.keca, lokasi.desa, lokasi.desk, lokasi.utm_y, lokasi.utm_x, 
         tanam.no_tanam, tanam.t_utama, tanam.pola1, tanam.pola2, tanam.pola3, tanam.dlm_olah, tanam.t_tanah, 
         lahan.no_lahan, lahan.jenis, lahan.penggunaan, lahan.kondisi, lahan.drainase, 
         produktivitas.no_prod, produktivitas.p_padi, produktivitas.p_jagung, produktivitas.p_kedelai, produktivitas.pr_lain, produktivitas.prod_lain, produktivitas.pr_lain2, produktivitas.prod_lain2, 
         varietas.no_var, varietas.v_padi, varietas.v_jagung, varietas.v_kedelai, varietas.v_lain, varietas.var_lain, varietas.v_lain2, varietas.var_lain2, 
         pem_padi.np_padi, pem_padi.p_organik, pem_padi.p_urea, pem_padi.p_kcl, pem_padi.p_sp36, pem_padi.p_phonska, pem_padi.p_lain, pem_padi.pp_lain, 
         pem_jagung.np_jagung, pem_jagung.j_organik, pem_jagung.j_urea, pem_jagung.j_kcl, pem_jagung.j_sp36, pem_jagung.j_phonska, pem_jagung.j_lain, pem_jagung.pj_lain, 
         pem_kedelai.np_kedelai, pem_kedelai.k_organik, pem_kedelai.k_urea, pem_kedelai.k_kcl, pem_kedelai.k_sp36, pem_kedelai.k_phonska, pem_kedelai.k_lain, pem_kedelai.pk_lain, 
         pem_lain.np_lain, pem_lain.jenis_l, pem_lain.organik, pem_lain.urea, pem_lain.kcl, pem_lain.sp36, pem_lain.phonska, pem_lain.pupuk_lain, pem_lain.pem_lain'); 

    $this->db->from('input_pen'); 
    $this->db->from('bps'); 
    $this->db->join('peneliti', 'input_pen.no_obs = peneliti.no_obs'); 
    $this->db->join('kontak', 'input_pen.no_kon = kontak.no_kon'); 
    $this->db->join('lokasi', 'input_pen.no_lok = lokasi.no_lok'); 
    $this->db->join('tanam', 'input_pen.no_tanam = tanam.no_tanam'); 
    $this->db->join('lahan', 'input_pen.no_lahan = lahan.no_lahan'); 
    $this->db->join('produktivitas', 'input_pen.no_prod = produktivitas.no_prod'); 
    $this->db->join('varietas', 'input_pen.no_var = varietas.no_var'); 
    $this->db->join('pem_padi', 'input_pen.np_padi = pem_padi.np_padi'); 
    $this->db->join('pem_jagung', 'input_pen.np_jagung = pem_jagung.np_jagung'); 
    $this->db->join('pem_kedelai', 'input_pen.np_kedelai = pem_kedelai.np_kedelai'); 
    $this->db->join('pem_lain', 'input_pen.np_lain = pem_lain.np_lain'); 
    $this->db->where('input_pen.no_form', $no_form); 
    $this->db->where('bps.kab = lokasi.kabu'); 
    $this->db->where('bps.kec = lokasi.keca'); 
    $this->db->where('bps.desa = lokasi.desa'); 
    $q = $this->db->get(); 

    return $q; 
} 

和我的觀點

<div class="row"> 
    <?php 
     foreach($detail as $d){ 
    ?> 
    <div class="col-lg-12"> 
      <div class="panel panel-default"> 
        <div class="panel-body"> 
         <div class="row"> 
          <div class="col-lg-9"> 
           <h4><label><p class="glyphicon glyphicon-option-vertical"></p> KONTAK</label></h4> 
           <table> 
           <tr> 
           <div class="form-group"> 
            <input type="text" name="nokon" hidden="true"> 
            <td width="150"><label>Jabatan</label></td> 
            <td><label>:</label></td> 
            <td width="600">&emsp;<?php echo $d->jabatan ?></td> 
           </div> 
           </tr> 
           <tr> 
           <div class="form-group"> 
            <td width="150"><label>Nama</label></td> 
            <td><label>:</label></td> 
            <td width="600">&emsp;<?php echo $d->nama ?></td> 
           </div> 
           </tr> 

但另一個函數日在使用foreach $數據工作正常。

編輯
我試圖一步步構建這個功能,直到達到像我上面寫的相同的代碼。在某些時候,var_dump的數組結果爲0,我得到了這個錯誤允許的內存大小134217728字節耗盡。那我該怎麼辦?

+0

'var_dump($ data ['detail'])'查看模型在發送給視圖之前返回的內容。 – Regolith

+0

它顯示數組(0){},這意味着我的模型是錯誤的? – Kiki

+0

嘗試在Mysql中執行查詢,然後在此處更新結果。 –

回答

0

首先,檢查你的$數據[「細節」] 在控制器

print_r($data['detail']); 
die(); 

加載視圖前,請確保您的foreach適當考慮關閉。

+0

它顯示數組(0){},這意味着我的模型是錯誤的? – Kiki

+0

是的,保持print_r並死亡,直到你沒有得到結果。 –

+0

我不明白,我該怎麼辦? – Kiki

0

回答您的編輯:

你的錯誤:

allowed memory size of 134217728 bytes exhausted

對於這一點,你需要增加你的內存限制。轉到您的php.ini文件。編輯memory_limit

這可能可以解決您的問題,但在此之前 嘗試使用Xdebug來分析您的腳本並找出所有內存的位置。

因爲如果你正在緩存一些嚴重的數據量,memory_limit是正確的方法。對某些腳本來說,128M是不夠的。 512M或1024M通常就足夠了,但你必須逐案決定。