M.C. Juan Carlos Olivares Rojas. Code Igniter “It’s an Open Source Web Application Framework...
-
Upload
martin-farias-fidalgo -
Category
Documents
-
view
218 -
download
0
Transcript of M.C. Juan Carlos Olivares Rojas. Code Igniter “It’s an Open Source Web Application Framework...
M.C. Juan Carlos Olivares Rojas
Code Igniter
“It’s an Open Source Web Application
Framework that helps you write incredible PHP programs”
Desarrollo de WebApps
• Estructura: HTML (HTML5, XHTML)
• Diseño: CSS
• Dinamismo Cliente: JavaScript
• Dinamismo Servidor: PHP*
• Datos: Base de Datos
Framework MVC
Flujo de Trabajo
Se necesita tener
previamente instalado:
Servidor Web con soporte para
PHP, SGBD
Se recomienda instalaciones LAMP como XAMPP
Instalación
Solo se copia la carpeta base que se descargo y está listo para usarse
Ejecución
• Se recomienda cambiar la línea:
• $config['base_url'] = "http://example.com/";
• Por la URL de nuestro sitio.
• Simplemente se accede a nuestra URL y ya tenemos montado un sitio de ejemplo.
Ejecución
Programación
• Se deben generar en primera instancia los controladores, las vistas y los modelos.
• Cada uno de ellos tienen sus propias carpetas específicas dentro de la carpeta application.
• Nótese que se cuenta con ejemplos de ellos
Controlador
• Derivan de la clase Controller (en la version 2.0 se usa CI_Controller)
• En ella se debe instanciar su constructor• Y definir el método index()
• Cada método deriva en una URL de acceso
Estructura URL
dominio.com/controlador/method/data
<?php class Search extends Controller {[...]function recuperar($id) {
$this->load->database(); [...]}
Vistas
• Las vistas están hechas de HTML.
• El controlador puede pasarle datos a través del arreglo $data[], donde cada entrada forma una variable de PHP.
• Generalmente el controlador recibe los datos del modelo
Acceso a la Vista
• Las vistas se acceden desde el controlador con:
$this->load->view('helloworld_view',$data);
$this->load->library(‘email);$this->load->database();
Modelo• El modelo representa la lógica de la
aplicación generalmente el acceso a los datos.
• Se deriva de la clase Model y sus métodos realizan procesos o manipulación de datos en nuestra base de datos.
Acceso a BD
• Para utilizar acceso a bases de datos se necesita configurar el archivo database.php dentro de la carpeta config.
• Se debe de cargar la biblioteca de BD en el archivo autoload.php dentro de la carpeta config con la siguiente línea:
• $autoload['libraries'] = array('database');
Acceso al Modelo
• Los modelos se acceden desde el controlador con:
$this->load->mode('helloworld_model'); $data['result'] = $this->helloworld_model-
>getData(); $data['page_title'] = "CI Hello World App!";
Otras configuraciones
• Se recomienda cambiar el controlador predeterminado para que acceda inmediatamente, esto se hace modificando la siguiente línea del archivo route.php dentro de la carpeta config:
• $route['default_controller'] = "Helloworld"
Funciones de BDfunction getData(){ $query = $this->db->get(’tabla'); if ($query->num_rows() > 0) { return $query->result(); } else{ echo 'Database is empty!'); } }}
Helpers
• Son funciones de utilidad que nos permiten ahorrar trabajo
• Se cargan de la siguiente forma• $this->load->helper(‘form’);
• Se invocan como funciones normales:• <?php form-helper() ?>
Cambio de index.php
• Para cambiar el molesto index.php al acceder a las URLs se necesitan configurar algunas cosas.
• En el archivo .htaccess (servidor apache) hay que agregar:
• RewriteEngine on• RewriteCond $1 !^(index\.php|images|
robots\.txt)RewriteRule ^(.*)$ ci/index.php/$1 [L]
Cambio index.php• En el archivo config.php de la carpeta config se
deberán cambiar:
• $config['index_page'] = "";• $config['rewrite_short_tags'] = TRUE;
•
¿Preguntas?
@jcolivares
/juancarlosolivaresrojas
http://antares.itmorelia.edu.mx/~jcolivares