foreach $ data没有显示任何CI Mysql

时间:2017-08-07 03:15:28

标签: php mysql codeigniter

我正在使用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字节耗尽。那我该怎么办?

2 个答案:

答案 0 :(得分:0)

首先,检查您的$ data ['detail'] 在加载控制器中的视图之前

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

确保您的foreach在视野中正确关闭。

答案 1 :(得分:0)

回复你的编辑:

您的错误:

  

允许的内存大小为134217728字节耗尽

为此,您需要增加内存限制。转到您的php.ini文件。修改memory_limit

今年5月可以解决您的问题,但在此之前 尝试使用Xdebug来分析您的脚本并找出所有内存的去向。

因为如果您正在缓存大量数据,memory_limit是正确的方法。对于某些脚本,128M是不够的。 512M或1024M通常就足够了,但你必须逐案决定。