Professional Documents
Culture Documents
com
http://www.allshorevirtualstaffing.com/how-to-develop-basic-crud-operations-in-codeigniter/#.Ve9Zj6LhC70
Hoy voy a demostrar la instalacin bsica de CodeIgniter, un Marco de PHP, y un simple ejemplo de la construccin
de un CRUD (Create, Read / Recuperar, Actualizar y Eliminar) con l.
Pre-requisitos
Se supone que tiene un nivel bsico de comprensin de lo siguiente:
PHP, MySQL, programacin orientada a objetos, MVC
Instalacin
Descargar
Para trabajar con CodeIgniter, tenemos que descargar su ltima versin (2.1.4 en el momento de escribir estas
lneas) de su enlace de descarga en http://ellislab.com/codeigniter.
WAMP entorno de servidor
Se necesita un entorno con un mnimo de Apache y PHP para trabajar con CodeIgniter. Para una plataforma
Windows, pila servidor WAMP es fcilmente disponible y sus .exe puede configurar el entorno en unos pocos
segundos. Configuracin del servidor WAMP se puede descargar desde http://www.wampserver.com/en/.
Configurar
Una vez instalado el servidor WAMP, por favor descomprima el archivo descargado CodeIgniter y cambiar el nombre
de la carpeta a "cisample", que contendr las carpetas de aplicaciones, sistemas y user_guide, junto con algunos
otros archivos.
Ahora coloque esta carpeta cisample dentro carpeta C: \ WAMP \ www. Se supone que el WAMP est instalado en
su ubicacin predeterminada. Si no es as, por favor, vuelva a ajustar la ruta en consecuencia.
Configuraciones
En esta seccin, vamos a configurar los ajustes de la base de datos para ayudar a construir esta muestra CRUD
rpidamente, pero con la facilidad de uso caractersticas, reutilizacin y de seguridad. Tambin vamos a configurar
algunos otros ajustes para beneficiarse de las bibliotecas centrales de este marco.
El primer archivo de configuracin de las configuraciones es C: \ WAMP \ www \ cisample \ application \ config \
config.php.
Establezca la URL base a http: // localhost / cisample.
Eliminar "index.php" de los contenidos de esta lnea:
1
$config['index_page'] = 'index.php'
Me gusta esto:
1
$config['index_page'] = '';
3. Cree un archivo de controlador "application / controllers / todos.php" para las tareas pendientes con el siguiente
cdigo:
1
<?php
3
4
parent::__construct();
$this->load->library('form_validation');
$this->load->model('todo_model');
10
11
12
13
14
$data['todos'] = $this->todo_model->get_todos();
15
$this->load->view('templates/header', $data);
16
$this->load->view('todos/index', $data);
17
$this->load->view('templates/footer');
18
19
20
21
$id = $this->uri->segment(3);
22
if (empty($id))
23
24
show_404();
25
26
27
$data['todo'] = $this->todo_model->get_todos($id);
28
$this->load->view('templates/header', $data);
29
$this->load->view('todos/view', $data);
30
$this->load->view('templates/footer');
31
32
33
34
35
36
37
38
39
40
$this->load->view('templates/header', $data);
41
$this->load->view('todos/create');
42
$this->load->view('templates/footer');
43
44
else
45
46
$this->todo_model->set_todos();
47
$this->load->view('todos/success');
48
49
50
51
52
$id = $this->uri->segment(3);
53
if (empty($id))
54
55
show_404();
56
57
58
$data['todo'] = $this->todo_model->get_todos($id);
59
60
61
62
63
$this->load->view('templates/header', $data);
64
$this->load->view('todos/edit', $data);
65
$this->load->view('templates/footer', $data);
66
67
else
68
69
$this->todo_model->set_todos($id);
70
71
72
73
74
75
$id = $this->uri->segment(3);
76
if (empty($id))
77
78
show_404();
79
80
$this->todo_model->completed($id);
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
El mtodo del ndice establece el ttulo de la pgina, se carga toda la tareas pendientes del modelo y carga la vista
del ndice para mostrar la lista de todas las tareas pendientes.
El mtodo de "vista" obtiene el ID de tareas pendientes de la URL, la comprobacin para ver si el ID est vaco o no.
Si est vaco, entonces se lanza una pgina 404 u obtiene el elemento de tarea desde el modelo basado en la
identificacin y cargas "vista" de tareas para mostrar los detalles de tareas artculo.
El mtodo create presenta al usuario una forma de crear una tarea pendiente, procesa la entrada a travs de reglas
de validacin e inserta un nuevo registro en la base de datos sobre el envo de formularios.
El mtodo de edicin hace lo mismo que el mtodo de ver, excepto que carga los datos de tareas pendientes en un
formulario para editar y despus actualiza el elemento de tarea en la base de datos.
El mtodo de "completo" actualiza el registro basado en el ID pasado en la URL para completar el proceso.
4. Crear un archivo de modelo "application / modelos / todo_model.php" con el siguiente cdigo:
1
<?php
3
4
$this->load->database();
8
9
10
11
12
if ($id === 0)
13
14
15
return $query->result_array();
16
17
18
return $query->row_array();
19
20
21
22
$this->load->helper('url');
23
$data = array(
24
25
26
);
27
if ($id === 0) {
28
29
30
else {
31
$this->db->where('id', $id);
32
33
34
35
36
37
$data = array(
38
'completed' => 1
39
);
40
41
$this->db->where('id', $id);
42
$this->db->update('todos', $data);
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
El mtodo get_todos obtiene toda la tareas pendientes de la base de datos si no se pasa ningn ID, o si se pasa un
ID, se obtiene el punto primero de tareas sobre la base de ese ID.
El mtodo set_todos inserta nuevos datos en la base de datos para el almacenamiento permanente si no se pasa
ningn ID, o actualiza los datos existentes en la base de datos si se pasa un ID.
El mtodo completado marca un registro completo en la base de datos.
5. Crear los siguientes archivos de vista en su views / directorio de la aplicacin / todos / con su respectivo cdigo:
a) index.php
1
2
3
<div id="list">
5
6
7
8
10
11
<hr>
12
endforeach ?>
b) create.php
2
3
4
5
6
7
9
10
11
<textarea name="description"></textarea>
12
13
14
</form>
15
c) edit.php
1
2
3
4
5
6
7
9
10
11
<textarea name="description"></textarea>
12
13
14
15
</form>
d) view.php
1
<div id="list">
</div>
e) Success.php
1
Data inserted
6. Inserte las siguientes lneas en su application / config / routes.php para Todos en caso de que quisiera que los de
fantasa / diferentes direcciones URL de sus recursos de la aplicacin:
1
$route['todos/create'] = 'to-dos/create';
$route['todos/view/(:any)'] = 'to-dos/view/$1';
$route['todos/edit/(:any)'] = 'to-dos/edit/$1';
$route['todos/completed/(:any)'] = 'to-dos/completed/$1';
$route['todos'] = 'to-dos';
$config['base_url'] = 'http://localhost/cisample/';
$config['index_page'] = '';
8. Ajuste los siguientes parmetros en su application / config / database.php dependiendo de la configuracin del
servidor de bases de datos, la ma se fijan a los valores predeterminados as:
1
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'cisample_db';
9. Crear un archivo .htaccess en el directorio cisample dentro de su directorio web raz con el siguiente cdigo de
URL como http: // localhost / cisample / Todos:
1
RewriteEngine On
10. Ahora compruebe la configuracin del servidor web Apache para asegurarse de que est cargado el mdulo
mod_rewrite.
11. Crear cada uno de los siguientes archivos en el directorio application / views / plantillas con su respectivo cdigo
de plantilla:
a) header.php
1
<html>
<head>
label{width:75px; display:inline-block}
</head>
<body>
b) footer.php
1
<strong>
</strong>
</body>
</html>
Khurram K.
PHP Team Lead en Allshore Staffing virtual
Somos una empresa de colaboracin en Allshore Staffing virtual, y alentamos a nuestros empleados
a contribuir con contenido como this.Allshore es una agencia de personal remoto ayudando nuevas
empresas en los EE.UU. contratar ingenieros de software a distancia para trabajar como empleados
de tiempo completo. Allshore ofrece todo el apoyo tcnico y de gestin a travs de nuestros servicios a los clientes y
los equipos de tecnologa de tutora basada en Norman, Oklahoma. Contacto Allshore hoy para programar una
llamada de consulta gratuita con un especialista en la dotacin de personal a distancia o solicitar una prueba gratuita
de nuestros servicios.