配列のインデックスを一覧表示しようとしていますが、エラーが発生し続けます。
このエラーが発生しています:
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
があることはわかっていますが、存在し、インデックスが存在しない場合はページを読み込めないため、チェックは意味がありません。