我是CodeIgniter的新手,现在我正在创建一个网站。管理员可以在登录后查看所有记录,但不幸的是,目标URL显示404 Page Not Found。我正在使用temple(页眉n页脚)作为菜单。 这是我的header.php
<div class="collapse navbar-collapse" id="navbarColor01">
<ul class="navbar-nav mr-auto" >
<?php if(!$this->session->userdata('logged_in')) : ?>
<li class="nav-item"><a class="nav-link" href="<?php echo base_url(); ?>users/login">Login</a></li>
<li class="nav-item"><a class="nav-link" href="<?php echo base_url(); ?>users/register">Register</a></li>
<?php endif; ?>
<?php if($this->session->userdata('logged_in')) : ?>
<li class="nav-item"><a class="nav-link" href="<?php echo base_url(); ?>posts">List Item</a></li>
<li class="nav-item"><a class="nav-link" href="<?php echo base_url(); ?>posts/create">Create Post</a></li>
<li class="nav-item"><a class="nav-link" href="<?php echo base_url(); ?>users/logout">Logout</a></li>
<li class="nav-item"><a class="nav-link" href="<?php echo base_url(); ?>admin">Admin</a></li>
<?php endif; ?>
</ul>
</div>
当我点击管理菜单时,它应该转到管理员控制器并调用索引函数进行cofirmation我把echo和die但它显示404错误。这是我的管理员控制器
<?php
class Admin extends CI_Controller{
public function index(){
echo "Reach here"; die;
if (!$this->session->userdata('logged_in')) {
redirect('users/login');
}
?>
提前感谢您的帮助。
答案 0 :(得分:3)
点击您的管理员链接:
由于Admin
不是您的默认controller
而您没有为管理员设置路线
像这样放置admin
链接
<li class="nav-item">
<a class="nav-link" href="<?php echo base_url('admin/index'); ?>">Admin</a>
</li>
但是如果你想这样做:
<li class="nav-item">
<a class="nav-link" href="<?php echo base_url('admin'); ?>">Admin</a>
</li>
然后像这样设置route.php
:
$route['admin'] = 'admin/index';
和控制器:
<?php
class Admin extends CI_Controller{
public function index(){
echo "Reach here"; die;
if (!$this->session->userdata('logged_in')) {
redirect('users/login');
}
?>
答案 1 :(得分:0)
请使用父母构造,然后才能按照自己的方式行事。
public function __construct() {
parent :: __construct();
$this->load->model(array('restaurants_m', 'categories_m', 'cities_m', 'customers_m', 'states_m', 'orders_m', 'delivery_boys_m'));
$this->load->library(array('email'));
$this->load->helper('url');
}