Tutorial Codeigniter
Desarrollo de un modulo de registro de periodos vacacionales así como la prima correspondiente a estos periodos
1. Definir tabla en nuestra base datos ( creada previamente e.j sistema)
Para crear la tabla hay dos opciones
ir a localhost/phpmyadmin/
A) entrar a las base de datos sistema oprimir el boton sql y copiar el siguientecodigo
CREATE TABLE IF NOT EXISTS `vacaciones` (
`id` int(11) NOT NULL auto_increment,
`nombre` varchar(255) NOT NULL,
`inicia` date NOT NULL,
`termina` date NOT NULL,
`prima` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
B) Crerala manualmente como se muestra en el video
2. Cofiguracion
a) En codeigniter hay 2archivos importantes para la configuración
system\application\config \confi.php
aquí es importante el poner el url de nuestra aplicación
$config['base_url'] = "http://localhost/aplicacion/";
system\application\config\database.php
$db['default']['hostname'] = "localhost";
$db['default']['username'] = "root";
$db['default']['password'] = "admin";
$db['default']['database']= "sistema";
$db['default']['dbdriver'] = "mysql";
b) En codeigniter hay 3 carpetas importates para el desarrollo de un modulo
system\application\controllers ---> aquí van los archivos controladores
system\application\model s ----> aquí van los archivos modelo
system\application\views ----> aquí van los archivos vista
3. Creando el controlador de nuestromodulo
En la carpeta de controlador crear un archivo con el nombre de vacaciones.php
controllers/ vacaciones.php
<?php
class Vacaciones extends Controller
{
function Vacaciones()
{
parent::Controller();
$this->load->model('Vacaciones_model');
}
/// pantalla de bienvenida al modulo de vacaciones
function index(){
$data['seccion'] = "home";
$partials =array('content'=>'vacaciones/home');
$this->template->load('plantilla', $partials, $data);
}
/// muestra todos los registros de vacaciones en una tabla
function admin(){
$data['vacaciones'] = $this->Vacaciones_model->getTodos();
$partials = array('content'=>'vacaciones/Admin');
$this->template->load('plantilla', $partials, $data);
}
// muestraformulario para sumar nuevo registro
function add(){
$this->load->helper('form');
$data['css'] = array('js/datePicker/jquery.datepick.css');
$data['js'] = array('js/jquery.datepick.js', 'js/jquery.datepick-es.js', 'js/jquery.datepick.validation.pack.js', 'js/admin/banner.js');
$partials = array('content'=>'vacaciones/Add');
$this->template->load('plantilla', $partials,$data);
}
// muestra formulario con campos llenos para editar un registro
function edit(){
$this->load->helper('form');
if(is_numeric($this->uri->segment(3))){
$id = $this->uri->segment(3);
$data['vacaciones'] = $this->Vacaciones_model->getDetalles($id);
}else{
redirect('vacaciones/add', 'refresh');
}
$data['css'] = array('js/datePicker/jquery.datepick.css');$data['js'] = array('js/jquery.datepick.js', 'js/jquery.datepick-es.js', 'js/jquery.datepick.validation.pack.js', 'js/admin/banner.js');
$partials = array('content'=>'vacaciones/Add');
$this->template->load('plantilla', $partials, $data);
}
/// funcion para salvar un registro vacacional
function save(){
$this->load->helper('form');
$dataSet=$_POST;if(isset($dataSet['submit'])){
unset($dataSet['submit']);
if(!empty($dataSet['id'])){ /// si el id tiene valor se actualiza el registro
$id=$dataSet['id'];
unset($dataSet['id']);
$this->Vacaciones_model->saveVacacionesData($id,$dataSet); // se invoca funcion del modelo para actualizar
redirect('vacaciones/admin', 'refresh');
}
else { /// si no existe id se agrega el registro...
Regístrate para leer el documento completo.