相关疑难解决方法(0)

在CodeIgniter中显示404错误的视图

CodeIgniter有一个非常简单的默认错误404消息:

404 Page Not Found
The page you requested was not found.
Run Code Online (Sandbox Code Playgroud)

我没有在完全空白页面上使用此错误消息,而是将此消息包装在我的页眉和页脚视图之间,以便错误消息与其他页面具有相似的外观.

为此,我创建了一个错误视图?例如:

my404_view.php

<? $this->load->view('header'); ?>
404 Page Not Found
The page you requested was not found.
<? $this->load->view('footer'); ?>
Run Code Online (Sandbox Code Playgroud)

现在,我如何使用它my404_view.php作为默认视图来显示404消息,而不是使用CodeIgniter默认错误消息.

php codeigniter http-status-code-404

13
推荐指数
1
解决办法
2万
查看次数

base_url()函数不适用于错误页面.即使在自动加载之后

我希望有漂亮的好看的错误页面.为此,我需要获得一些CSS和JS文件.但由于一些奇怪的原因使用base_url()不起作用的error_pages.我当然可以使用href="/css/style.css"并告诉它从根文件夹中获取它.但是网站很可能放在与根文件夹不同的文件夹中.因此使用/不是一种选择.

所以我现在的问题是为什么不能base_url()在错误页面上工作?我已经自动加载它所以不应该工作吗?

这是我在尝试从视图中的error_404页面获取base_url()时尝试的.

在我的autoload.php中,我已经包含了帮助器 url

$autoload['helper'] = array('url', 'form');
Run Code Online (Sandbox Code Playgroud)

在我的error_404页面(application/views/errors/html/error_404.php)中,我回复了base_url,如下所示:

<?php echo base_url(); ?>

这是我得到的错误:

An uncaught Exception was encountered

Type: Error

Message: Call to undefined function base_url()

Filename: /usr/local/www/example.com/application/views/errors/html/error_404.php

Line Number: 37

Backtrace:

    File: /usr/local/www/example.com/index.php
    Line: 315
    Function: require_once
Run Code Online (Sandbox Code Playgroud)

我不想在system文件夹中进行任何更改,因为每次更新Codeigniter文件夹时我都不想重做该过程.

系统:

Codeigniter 3.0.6

PHP 7.0.8

Nginx 1.11.1

更新: 我想在每个错误页面(db,404,general,php等)上调用base_url.

php codeigniter

6
推荐指数
1
解决办法
1864
查看次数

标签 统计

codeigniter ×2

php ×2

http-status-code-404 ×1