1

配列のインデックスを一覧表示しようとしていますが、エラーが発生し続けます。

このエラーが発生しています:

PHP エラーが発生しました
重大度: 通知
メッセージ: 未定義のインデックス: 送信者

コードの詳細については、次のとおりです。私の印刷行:

<div class="left"><label>Afsender: </label><p><?=$reservation['sender'] . ' (' .     $reservation['email'] . ')'?></p></div></pre>

私のコントローラ:(CodeIgniter用のphil sturgeonのテンプレートライブラリを使用)

public function readReservation($id)
{
    $data['reservation'] = $this->reservation_model->getReservation($id);
    $this->template->build('admin/readReservation_view', $data);
}

私のモデル:

public function getReservation($id) 
{
    $query = $this->db->where('id', $id)->get('ita_reservations');

    if ($query->num_rows > 0) 
    {
        return $query->result();
    }
    else
        return false;
}

私のSQL:

CREATE TABLE IF NOT EXISTS `ita_reservations` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `sender` varchar(200) NOT NULL,
  `email` varchar(200) NOT NULL,
  `date` varchar(200) NOT NULL,
  `time` varchar(200) NOT NULL,
  `persons` varchar(200) NOT NULL,
  `phone` varchar(200) NOT NULL,
  `message` varchar(1000) NOT NULL,
  `time_received` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `confirmed` tinyint(1) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;

今、私を困惑させているのは、同じコードが他の場所でも機能するが、変数名が異なることです。私の混乱を増すために、これはvar_dump私のプリントの上の行からのものです:

array(1) { [0]=> object(stdClass)#42 (10) { ["id"]=> string(1) "1" ["sender"]=> string(7) "Kenneth" [" email"]=> string(17) "zungate@gmail.com" ["date"]=> string(10) "23/05/2013" ["time"]=> string(5) "18:00" ["persons"]=> string(1) "4" ["phone"]=> string(8) "30243681" ["message"]=> string(12) "Ja nemlig ja" ["time_received"]= > 文字列(19) "0000-00-00 00:00:00" ["確認済み"]=> 文字列(1) "0" } }

送信者インデックスは明らかにそこにあり、配列は明らかに適切にロードされています。(送信者だけでなく、すべてのインデックスがエラーをスローします)。

何が起こっているのですか、何が欠けていますか? はい、issetまたはをチェックする必要emptyがあることはわかっていますが、存在し、インデックスが存在しない場合はページを読み込めないため、チェックは意味がありません。

4

1 に答える 1