2017-08-07 1 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

um私は理解していません、どうすればいいですか? – Kiki

0

あなたの編集に答える:

あなたのエラー:そのために

allowed memory size of 134217728 bytes exhausted

を、あなたのメモリ制限を増やす必要があります。 php.iniファイルに移動します。 memory_limitを編集します。

これはあなたの問題を解決することができますが、その前に Xdebugを使用してスクリプトをプロファイルし、そのメモリがどこにあるのかを調べてみてください。

重大な量のデータをキャッシュする場合は、memory_limitが正しい方法です。特定のスクリプトでは128Mでは不十分です。 512Mまたは1024Mで十分ですが、大文字と小文字を区別する必要があります。

関連する問題