私が投稿したコードは問題なく動作し、ページは正しく表示されます。
コントローラ:
class Articles extends Frontend_Controller {
public function __construct() {
parent::__construct();
$this->homeMetaTags = $this->configOptionsModel->get(1);
$this->bgimage = $this->configOptionsModel->get(2);
$this->db->where('catid = "1"');
$this->services = $this->articlesModel->get();
$this->projects = $this->projectsModel->get();
}
public function displayArticle()
{
$data['default_metatags'] = $this->homeMetaTags;
$data['bgimage'] = $this->bgimage;
$data['services'] = $this->services;
$data['projects'] = $this->projects;
$this->load->model('articlesModel');
$artid = $this->uri->segment(3);
$this->db->where('artid ='.$artid);
$data['article'] = $this->articlesModel->get();
$data['main_content'] = 'articles';
$this->load->model('articlesImagesModel');
$this->db->where('artid ='.$artid);
$data['artimg'] = $this->articlesImagesModel->get();
$this->load->view('frontEnd/template',$data);
}
}
意見:
<?php echo $article[0]['title'];?>
<?php echo $article[0]['articletext'];?>
アドレス バーに次の URL が表示されます。
www.mysite.com/articles/displayArticle/3 ここまでは順調です。
しかし... アドレスバーに入力すると: www.mysite.com/articles/displayArticle/3546666
カスタム 404 エラー ページにリダイレクトされる代わりに、次のエラーが表示されます。
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 0
Filename: frontEnd/articles.php
Line Number: 12
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 0
Filename: frontEnd/articles.php
Line Number: 48
案の定、これらの 12 行目と 48 行目は、ビューのコードが配置されている 2 行です。
これらのエラーを表示する代わりに、誰かが存在しない ID を入力して 404 ページにリダイレクトされるようにしたいと思います。
よろしく、ゾラン