Mostrando entradas con la etiqueta codeigniter. Mostrar todas las entradas
Mostrando entradas con la etiqueta codeigniter. Mostrar todas las entradas

sábado, 4 de enero de 2014

Creando un controlador en codeigniter

Lo que haremos es crear un controlador para páginas estáticas lo que nos ayudará a comprender mejor el modelo MVC (Modelo Vista Controlador), para realizar este tutorial es necesario tener instalando y configurado codeigniter


  1. Crear un archivo en : yci_application/controllers/pages.php   
    Es una clase que hereda de CI_Controller lo que significa que hereda toda la funcionalidad(métodos y propiedades) de dicha clase 

    El controlador es como la central de cualquier petición de nuestra app es como un terminal aérea que tiene que despachar los aviones que llegan y salen

    Además el controlador será referenciado como $this
     
  2. Hecho esto hacer un template para el encabezado y pie de pagina de nuestra applicación, para esto creamos los siguientes archivos: header.php y footer.php
    el código de header.php es 
    <html>
    <head>
        <title><?php echo $title ?> - CodeIgniter 2 Tutorial</title>
    </head>
    <body>
        <h1>CodeIgniter 2 Tutorial</h1>
    y el código  de footer.php es
    <strong>&copy; 2011</strong>
    </body>
    </html>
  3. Ok, ahora añadiremos código a nuestro controlador para manejr las peticiones que le enviemos; el código lo añadiremos al archivo que creamos previamente pages.php alojado en la carpeta controllers; en mi caso yo lo tengo en la carpeta yci_application\controllers

    Ahora añadiremos el siguiente código al metodo view (es el código sombreado)
            if ( ! file_exists('yci_application/views/pages/'.$page.'.php'))
            {
                // Whoops, we don't have a page for that!
                show_404();
            }

            $data['title'] = ucfirst($page); // Capitalize the first letter

            $this->load->view('templates/header', $data);
            $this->load->view('pages/'.$page, $data);
            $this->load->view('templates/footer', $data);

    Ok listo, ahora podemos probar nuestro modelo MVC y ver como trabaja, para entender como trabaja codeigniter debemos entender las rutas de las direcciones; recordemos que hemos creado dos páginas nuevas que fueron home.php y about.php, para accederlas escribimos 
    http://localhost/CodeIgniterV2.1.4/index.php/pages/view/


    y para acceder about.php 
    http://localhost/CodeIgniterV2.1.4/index.php/pages/view/about

    recordar que yo tengo instalado el condeigniter en la carpeta "CodeIgniterV2.1.4"

    la estructura de las _Urls es de la siguiente manera 
    Ahora bién sería muy tedioso tener que estar escribiendo todo eso en la Url del navegador para entrar al home por lo que podemos definir un comportamiento por default en el archivo route.php

    editamos el archivo route.php alojado en la carpeta yci_application/config/ 

    luego editamos el codigo sombreado 
    y en lugar del controlador welcome escribimos el controlador pages/view que creamos 
    $route['default_controller'] = 'pages/view';
    $route['(:any)'] = 'pages/view/$1';

    con esto lo que le estamos diciendo a codeigniter es que por default use nuestro controlador
    el segundo "route " se encarga de pasara cualquier parametro al mismo controlador, para probarlo escriba en la url :
    http://localhost/CodeIgniterV2.1.4/index.php/about
    y
    http://localhost/CodeIgniterV2.1.4/



Primeros pasos con codeigniter

Pasos previos:


  1. Bajar el archivo de: http://ellislab.com/codeigniter
  2. Descargado y descomprimirlo en la carpeta de nuestro apache: yo lo tengo en "C:\Program Files\Apache Group\Apache2\htdocs\CodeIgniterV2.1.4"
  3. Editar el archivo C:\Program Files\Apache Group\Apache2\htdocs\CodeIgniterV2.1.4\application\config\config.php ; en este archivo estan contenidas todas las variables de entorno de CodeIgniter
  4. Renombrar los directorios por motivos de seguridad: para mayo seguridad de nuestra aplicacion es necesario renombrar los directorio donde se encuentran el código  
  5.  Setear las variables de los directorios de applicacion y system  en index.php
  6. Ajustar los parametros de la base de datos
  7. ajustar las variables de la base de datos en mi caso yo edite
    $db[‘default’][‘username’],
    $db[‘default’][‘password’],
    $db[‘default’][‘database’]
     
     
  8. Hecho los anterior ya podemos ejecutar nuestra aplicacion en el navegador
  9.