Codeigniter, parte 3: Página principal y error 404

5 Ago

Cuando accedimos por primera vez a nuestro proyecto, vimos por pantalla la respuesta del controlador Welcome, ésta es la acción que viene por defecto en Codeigniter. Toda aplicación web tiene una página principal que es la que se accede en el raíz.

Ahora bien, seguramente al iniciar un proyecto queramos definir cuál sería la acción de nuestra página principal. Para ello vamos a crear un nuevo controlador. Dentro de application -> controllers vamos a crear un controlador, que sería nuestro controlador principal. Yo le pondré como nombre principal.php, éste tendrá el siguiente código:

<?php
if (!defined('BASEPATH'))
   exit('No direct script access allowed');
class Principal extends CI_Controller { 
   public function index(){
      echo 'Bienvenido a la página principal.';
   }
}

Ahora para indicarle a Codeigniter que ésta acción será nuestra página principal debemos ir a application -> config -> routes.php, y vamos a buscar la siguiente línea:

$route['default_controller'] = "welcome";

Como vemos, por defecto el controlador inicial será welcome, ésa es la razón por la cual se accede al mismo ingresar a la url de la página inicial de nuestro proyecto:

http://localhost/ci

Para cambiar este controlador vamos a ingresar como página principal el controlador principal:

$route['default_controller'] = "principal";

 

Error 404

Al ingresar a una url que no existe, por defecto aparecerá por pantalla una respuesta mostrando un error 404, que significa página no encontrada. Nosotros podemos personalizar esta pantalla de error con Codeigniter de forma muy sencilla. Para ello haremos un proceso similar al que hicimos para la página principal.

Primero vamos a crear un controlador como siempre en application -> controllers, yo voy a llamarlo simplemente: error404.php. Tendrá el siguiente código:

<?php
if (!defined('BASEPATH'))
   exit('No direct script access allowed');
class Error404 extends CI_Controller { 
   public function index(){
      echo 'Error 404. Usted está intentando acceder a una página que no existe.';
   }
}

Ahora, para definir esta acción como nuestra página de error 404, vamos a ir a application -> config -> routes.php, y vamos a buscar la siguiente línea:

$route['404_override'] = '';

El valor de ésta será el nombre del controlador:

$route['404_override'] = 'error404';

Ahora si por ejemplo accedemos a una página que no existe deberíamos ver la acción del error 404, por ejemplo:

http://localhost/ci/tito

 

Anterior: Codeigniter, parte 2: Eliminar index.php de la url

Siguiente: Codeigniter, parte 4: Controladores

 

Redes sociables

    Deja un comentario

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


    *