Formulario de contacto (Primera Parte): Código básico
Bueno tal y comenté, hace días abrí el foro para que todos los usuarios con dudas y sugerencias pudieran participar activamente en el blog. Ayer el usuario jarruego me comentó que podría hacer un pequeño tutorial de cómo hacer un modulo que es básico y común en la mayoría de webs: un formulario de contacto. Nos servirá para introducir a aquellos que sean nuevos en esto con un sencillo ejemplo.
Para esta pequeña aplicación utilizaré la última versión de CodeIgniter (que hay por el momento) que es la 2.0.0.
Un formulario de contacto nos ayudará a que cualquier persona interesada en nuestra web, ya sea un negocio, portafolio o cualquier otra cosa. Se puede ampliar tanto como queráis pero como esto es un tutorial haremos los campos mas básicos: nombre, email, mensaje.
Voy a dividir este tutorial en 2 o quizá 3 posta, empezaré con el código básico, tanto HTML como PHP (en CodeIgniter). Luego seguiré con la libreria de validación para poder comprobar que han entrado los campos correctamente. Acabaré usando la librería para mandar emails fácilmente, así nos llegará al correo este formulario básico de contacto en CodeIgniter.
Primero de todo empezaremos creando el código HTML para el formulario. Usaré etiquetas que no se suelen usar pero que deberíais hacerlo, como fieldset, legend y label, eso ayudará a la visibilidad y usabilidad del mismo. Cabe decir que no voy a "diseñar", así que lo dejaré tal cual salga aunque todos sabemos que el html sin css es feo, pero ahora lo que nos interesa es el código php.
Sistema de Usuarios (Segunda parte): Clase ‘Centinela’ I
En la primera publicación de este taller planificamos de forma muy genérica como queríamos nuestro sistema de usuarios. Hoy vamos a concretar un poco más y empezaremos a definir como sera nuestra clase 'Centinela' que se encargará de controlar nuestro sistema.
Nuestra 'clase', será una librería por lo tanto nos miraremos en la fantástica guía de CodeIgniter cómo funcionan las librerías. En definitiva lo que nos interesa es que alojaremos nuestro "Centinela.php" en application/libraries. Nuestro archivo empezará con una mayúscula. Al principio de nuestro php pondremos para que no puedan acceder de manera no controlada a nuestra clase:
if(!defined('BASEPATH'))
exit('No direct script access allowed');
Nuestra clase necesitará de unas variables para que podamos almacenar los datos que usaremos:
- id: será la id de nuestro usuario un valor numerico y único.
- nick: será el nombre de nuestro usuario.
- clave: será la contraseña de nuestro usuario (encriptada)
- nivel: se refiere al nivel del usuario (invitado, operador, administrador, etc..). Como mayor sea el valor más alto será el cargo.
- auth: será una variable booleana. Si vale "TRUE", es que el usuario estará bien autentificado.
Gestor de noticias (Segunda parte): Controladores
Recapitulando, habíamos creado nuestra plantilla y luego la habíamos divido en una cabecera y un pie de página.
En este capitulo crearemos nuestro primer controlador, veremos algún ejemplo de funcionamiento con el típico "Hola Mundo!" y algunos otros detalles.
Para empezar explicaré cómo funciona todo esto de los controladores. Como expliqué en la "primera parte", los controladores son los que coordinan las vistas, el "código" y los modelos. La arquitectura de un controlador es una clase, dónde cada función responderá según nuestra URL, me explico:
http://www.tu-web.com/(index.php)/controlador/función/[variables]
