2017-08-06 12 views
1

私はできません患者登録キューの数、今日のデータ登録が利用できないときに問題があります。データが利用できないときに変数をキャッチする方法

コントローラ::

function index() 
{ 
    $this->load->helper('url'); 
    $data['tbl_pendaftaran'] = $this->m_pendaftaran->getData()->result(); 
    $data['pasien']=$this->m_pendaftaran->getPasien(); 
    $data['kpendaftaran']=$this->m_pendaftaran->get_no_pendaftaran(); 
    //status 
    $data['status'] = $this->m_pendaftaran->status()->result(); 
    $this->template->load('template','pendaftaran/v_pendaftaran',$data); 
} 

モデル:ここ

は私のコードです

function status() 
{ 
    $this->db->select('*'); 
    $this->db->from('tbl_pendaftaran'); 
    $this->db->join('tbl_pasien', 'tbl_pendaftaran.id_pasien = tbl_pasien.id'); 
    $this->db->where('status','menunggu'); 
    $this->db->limit(1); 
    return $this->db->get(); 
} 

ビュー:

ここ
<?php 
    foreach ($status as $key) { 
    } 
    $cur = date("Y-m-d H:i:s",time()); 
    if ($key->tgl_berobat<$cur) { 
     echo "No Patient for Today"; 
    } else { 
     echo $key->no_antrian; 
    } 
?> 

エラーの結果であるときに、今日Isnとのデータ利用可能:

Severity: Notice 
Message: Undefined variable: key 
Filename: views/v_pendaftaran.php 
Line Number: 22 
+0

あなたが適切に近いforeachループを持っていませんでした。 –

答えて

1

見て、あなたはここでミスを入力しているようか、誤ってforeachループを閉じて:

:この方法を試してみてくださいあなたのコメントに対応するため

<?php 
    foreach ($status as $key) { 

    $cur = date("Y-m-d H:i:s",time()); 
     if ($key->tgl_berobat < $cur) { 
      echo "No Patient for Today"; 
     } else { 
      echo $key->no_antrian; 
     } 

    } 

?> 

<?php 
    foreach ($status as $key) { 
    } 
    $cur = date("Y-m-d H:i:s",time()); 
    if ($key->tgl_berobat<$cur) { 
     echo "No Patient for Today"; 
    } else { 
     echo $key->no_antrian; 
    } 
?> 

はこれを試して

<?php 

if(isset($status) && !empty($status)){ 

    foreach ($status as $key) { 

    $cur = date("Y-m-d H:i:s",time()); 
     if ($key->tgl_berobat < $cur) { 
      echo "No Patient for Today"; 
     } else { 
      echo $key->no_antrian; 
     } 

    } 

} else { 
    echo "No Patient for Today"; 
} 


//OR 


if(isset($status) && !empty($status)){ 

    foreach ($status as $key) { 

    $cur = date("Y-m-d H:i:s",time()); 

    if(isset($key->tgl_berobat) && !empty($key->tgl_berobat)){ 
     if ($key->tgl_berobat < $cur) { 
      echo "No Patient for Today"; 
     } else { 
      echo $key->no_antrian; 
     } 
    } else { 
      echo "No Patient for Today"; 
    } 
    } 

} else { 
    echo "No Patient for Today"; 
} 

?> 
+0

これはうまくいっていますが、 'echo"今日の患者さんはデータが利用できない時を表示します.. –

+0

'isset' @ one_n00b –

0

私はルーブルはあなたのビューにあります。 ちょうどあなたのコントローラで

<?php 
    foreach ($status as $key) { 
     $cur = date("Y-m-d H:i:s",time()); 
     if ($key->tgl_berobat<$cur) { 
      echo "No Patient for Today"; 
     } else { 
      echo $key->no_antrian; 
     } 
} 
?> 
0

にコードを変更するには、多分それを結果とするオブジェクトが存在しない原因となり、結果関数を呼び出すことはありません。小切手で

function index() 
{ 
    . 
    . 
    . 
    //status 
    $data['status'] = $this->m_pendaftaran->status(); 
    $this->template->load('template','pendaftaran/v_pendaftaran',$data); 
} 

は、最初のオブジェクトが存在するかどう:

<?php 
if($status->num_rows()>0) 
{ 
    foreach ($status->result() as $key) { 

    $cur = date("Y-m-d H:i:s",time()); 
    if ($key->tgl_berobat<$cur) { 
     echo "No Patient for Today"; 
    } else { 
     echo $key->no_antrian; 
    } 
    } 
} 
?> 
関連する問題