我遇到了CodeIgniter 2的问题。它返回了404错误。这是我的代码:
配置/ routes.php文件
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$route['default_controller'] = "inventory";
$route['404_override'] = '';
$route['create_item'] = "inventory/createitem";
控制器/ inventory.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Inventory extends CI_Controller
{
public function index()
{
$this->load->view('inventory/index');
}
public function create_item()
{
$this->load->view('inventory/createitem');
}
}
视图/库存/ createitem.php
<!DOCTYPE html>
<html lang="en">
<head>
<?php $this->load->view('templates/head_inc'); ?>
</head>
<body>
<?php $this->load->view('templates/header_inc'); ?>
<div class="container-fluid">
<div class="row">
<div class="col-sm-3 col-md-2 sidebar">
<ul class="nav nav-sidebar">
<li class="active"><a href="index.php">Dashboard</a></li>
<li ><a href="patients.php">Patients</a></li>
</ul>
<ul class="nav nav-sidebar">
<li ><a href="createpatient.php">Create New Patient</a></li>
</ul>
<ul class="nav nav-sidebar">
<li ><a href="reports.php">Reports</a></li>
</ul>
</div>
<div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
<h1 class="page-header">Create New Item</h1>
</div>
</div>
</div>
<!-- Bootstrap core JavaScript
================================================== -->
<!-- Placed at the end of the document so the pages load faster -->
<?php $this->load->view('templates/footer_inc'); ?>
</body>
</html>
我一直在研究这个问题,但我似乎无法找到答案。 这是我第一次做PHP Framework。
我希望得到你的好答案。
答案 0 :(得分:1)
使用
$route['create_item'] = "inventory/create_item";
而不是
$route['create_item'] = "inventory/createitem";
因为在您的整理程序功能名称为create_item()
替代解决方案
将function create_item()
更改为function createitem()
答案 1 :(得分:1)
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$route['default_controller'] = "inventory";
$route['404_override'] = '';
$route['create_item'] = "inventory/create_item";
在配置中使用它,因为create_item是库存控制器中的功能名称。
答案 2 :(得分:1)
您在控制器中使用了inventory/createitem
,它应该是 controller_name / function_name ,路由数组包含您的网址参数
如果你想要这样的网址http://yoururl.com/inventory/createitem
,那么你需要添加如下内容:
$route['createitem'] = "inventory/create_item";
其中, createitem 是url param(您可以更改任何内容), create_item 应该是库存控制器中的功能名称。