> Manuales > Sistema de envío de postales en PHP

Explicamos los pasos a seguir para crear la base de datos en MySQL

Antes de abordar los scripts de nuestro sitio, es importante crear la base de datos (BD) que va a ser utilizada por los mismos. Hemos elegido una base de datos MySQL, entre otras razones, porque se trata del tipo de base más corrientemente utilizado en combinación con PHP. Por supuesto, podríamos haber utilizado cualquier otra base para la cual PHP tenga funciones o simplemente crear un DSN y emplear las funciones para ODBC disponibles en PHP.

Pensamos que el hecho de programar en este lenguaje lleva inherente la necesidad de conocer mínimamente el funcionamiento de MySQL y que la utilización de cualquier otra BD o método de conexión no conlleva cambios significativos en los scripts que abordaremos. Veremos pues el caso particular de MySQL y dejamos a vuestra cuenta aplicar lo visto para cualquier otra base.

En capítulos de otros manuales hemos explicado la instalación y utilización de MySQL y la sintaxis para la creación de tablas. En este capítulo nos limitaremos a describir paso a paso la creación de la base postal sin hacer hincapié en el significado de los comandos utilizados.

Pasemos pues a describir uno a uno los pasos a seguir:

1.-Creación de la base de datos
Una vez dentro de MySQL, el primer paso es crear la base de datos:

Create database postal;

2.-Creación de las tablas
Para la creación de la tabla imagenes, donde almacenaremos los gráficos de las postales, generaremos dos campos: id_imagen, que es el identificador del grafico, específico para cada uno y cuyo valor corresponde también con el nombre del archivo gif. El otro campo, tipo, define el objeto de la postal (cumpleaños, Navidades o San Valentín).

La forma más simple de crear esta tabla sería:

Create Table imagenes
(
id_imagen int(2),
tipo varchar(15)
);

La siguiente tabla a crear, postal, debe guardar toda una serie de datos necesarios para hacer llegar la postal al destinatario y hacer que el remitente reciba la confirmación de recepción. Veremos cómo actúa cada uno de esos datos en el script más adelante. Por ahora nos limitaremos a describir la sintaxis de la creación:

Create Table postal
(
id_postal int(5),
texto varchar(255),
email_destinatario varchar(50),
nombre_destinatario varchar(50),
email_remitente varchar(50),
nombre_remitente varchar(50),
id_imagen int(2),
avisar char(7)
);

Para una aplicación más compleja deberíamos definir además las claves y considerar más detenidamente el tipo de campo a definir. Aconsejamos leer los capítulos del tutorial de SQL donde podréis consejos para mejorar las prestaciones de las tablas.

3.-Relleno de la tabla imagenes con los gráficos de muestra
Para rellenar rápidamente la tabla en un primer momento, sin necesidad de recurrir a sentencias SQL tipo Insert, podemos crear un archivo de texto con los registros separados por líneas y los valores de campo, puestos en el buen orden, separados por tabuladores. En el pack de descarga encontraréis el archivo texto imagenes ya preparado. Lo único que tenéis que hacer es colocar el archivo en el directorio bin de MySQL y ejecutar la siguiente orden en la base de datos:

Load data local infile "imagenes.txt" into table imagenes;

Con esto tendremos llena la tabla imagenes. Para comprobarlo teclead:

select * from imagenes;

Veréis como aparece en pantalla el contenido de la tabla que obviamente corresponde al del archivo texto.

4.-Creación del directorio virtual en el servidor
Llegados a este punto, queda extraer los archivos restantes del pack a un directorio que deberá ser registrado en el servidor como directorio virtual tal y como hemos explicado para el caso del PWS.



Ir a la aplicación

Rubén Alvarez

Rubén es doctor en química y programador aficionado con experiencia en PHP.

Manual