我已经浏览了这个论坛并尝试了所提供的所有选项,但没有任何对我有用。
我使用一些Codeigniter教程开发了CMS。在我的电脑上一切正常。但是在远程服务器上,它无法正常工作。下面是代码。提前谢谢。
这是视图
目前正在编辑:
目前正在编辑:
负载>查看('模板/头&#39); ?>
<div class="container">
<!-- Static navbar -->
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#"><?php echo $this->brand; ?></a>
</div>
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="<?php echo base_url(); ?>">Home</a></li>
<li><a href="<?php echo base_url(); ?>pages/contact">Contact</a></li>
<?php //$CI =& get_instance(); ?>
<?php if ($this->p) : ?> //liine 24
<?php foreach($this->p as $page) : ?>
<li><a href="<?php echo base_url(); ?>pages/show/<?php echo $page->slug; ?>"><?php echo $page->title; ?></a></li>
<?php endforeach; ?>
<?php else : ?>
<?php endif; ?>
</ul>
</div><!--/.nav-collapse -->
</div><!--/.container-fluid -->
</nav>
<!-- Main component for a primary marketing message or call to action -->
<!-- <div class="well"> -->
<?php $this->load->view('Templates/slider'); ?>
<!-- </div> -->
<div style="margin-top:-55px; min-height: 300px;">
<div class="col-md-12">
<?php $this->load->view($main); ?>
</div>
</div>
<div class="well">
<?php $this->load->view('Templates/foot'); ?>
</div>
</div> <!-- /container -->
控制器
class Pages extends Public_Controller {
function __construct(){
parent::__construct();
//$this->load->library('p');
}
public function index() {
$data['featured_pages'] = $this->Page_model->get_featured();
$this->template->load('public', 'default', 'pages/index', $data);
}
public function show($slug){
$data['p'] = $this->Page_model->get_by_slug($slug);
$this->template->load('public', 'default', 'pages/show', $data);
}
public function contact(){
// $this->template->load('public', 'default', 'pages/contact')
die('contact');
}
}
答案 0 :(得分:0)
错误消息来自$this->p
未定义。首先,您似乎在控制器($p
- 方法)中定义$this->p
而不是show()
:
$data['p'] = $this->Page_model->get_by_slug($slug);
因此,最可能的解决方案是将第24行和第25行更改为:
<?php if (isset($p) && $p) : ?> //liine 24
<?php foreach($p as $page) : ?>