Ejercicios prácticos de PHP

Código PHP

Te proponemos crear un sitio web utilizando los lenguajes HTML5, CSS3 PHP5 para la presentación de los datos y el interfaz con el usuario, así como el gestor de bases de datos MySQL para almacenar y tratar los datos persistentes relativos al mismo. Este sitio web debe cumplir los siguientes requisitos generales:

  • Utilizar la codificación de caracteres UTF-8.
  • Estar alojado en un servidor web accesible globalmente (ver recomendados). Aunque durante el desarrollo se puede trabajar en local.
  • Estar escrito y validar en HTML5 (W3C Markup validation service).
  • Incluir enlaces para la navegación entre páginas.

A continuación detallamos cada una de las páginas que deben aparecer en el sitio así como los requisitos particulares de cada una de ellas.

 

Datos

Se debe elegir un tema sobre el que se almacenarán datos en nuestro sitio web, diferente al tema del resto de compañeros. Por ejemplo comidas, deportes, listado de software, enlaces de internet, etc. Una vez elegido se almacerán los datos intentando cumplir los requisitos que se enumerarán más adelante en el formulario.

La tabla de la base de datos debe tener un identificar denominado ID que identifique cada una de las tuplas de la misma.

 

index.php

Página inicial o portada de nuestro sitio web. Contendrá una cabecera o imagen sobre el tema tratado, además de un índice a las siguientes páginas:

  • Insertar datos (ir a la página form.php).
  • Ver datos (ir a la página select_data.php).
  • Exportar datos a XML (ir a la página xml_data.php).

El resto de páginas incluirán como mínimo un enlace al índice, además de los que creas convenientes.

 

form.php

Mostrará un formulario con todos los datos que se desean almacenar en la base de datos. Suponiendo que he elegido almacenar platos de comida típica andaluza, adaptaré los datos como podéis ver más adelante de ejemplo. El formulario debe tener los siguientes campos como mínimo:

  • Campo de texto del tipo "input" (nombre del plato).
  • Campo de texto del tipo "date" (antigüedad del plato).
  • Campo desplegable del tipo "select" (tipo de plato, carne, pasta, legumbres, ensaladas...).
  • Campo de elección única del tipo "radio" ("Con gluten" o "Sin gluten").
  • Campo de selección múltiple del tipo "checkbox" (provincias donde se puede encontrar).
  • Campo de texto de varias líneas del tipo "textarea" (observaciones).

Todos los campos, menos el de texto de varias líneas, son obligatorios rellenarlos por el usuario para poder almacenarlos en la base de datos.

El botón para enviar el formulario mediante el método POST nos llevará a la página insert_data.php.

 

insert_data.php

Esta página trabajará con los datos que que provienen del formulario anterior.

Si hay algún error en los datos o hay alguno sin rellenar, la página informará de dicho error y se detendrá la ejecución.

Si todos los datos son correctos y no se ha dejado en blanco ninguno de los datos obligatorios:

  1. Se mostrará una lista no ordenada con los datos que se van a introducir en la base de datos.
  2. Se insertarán los mismos datos del formulario en la base de datos y se indicará si se ha realizado correctamente. Insertar en un nuevo campo la fecha y la hora de ese instante.

 

select_data.php

Esta página mostrará una tabla con todos los datos almacenados en la base de datos.

Junto a cada fila de la tabla aparecerá la opción "Eliminar" que al pulsarla nos redirigirá a la página delete_data.php.

En la cabecera aparecerá la opción de ordenar la tabla, ascendente o descendente, mediante al menos dos columnas de la misma. Se realizará mediante parámetros GET en la URL.

http://localhost/table_data.php?ord_name=desc

 

delete_data.php

Esta página eliminará el registro de la base de datos indicado mediante el parámetro GET en la URL. Por ejemplo:

http://localhost/delete_data.php?delete_id=104

Al finalizar indicará si el borrado se ha realizado o no correctamente, controlando el caso en el que no se pase ningún ID por parámetro en la URL.

 

xml_data.php

Esta página exportará tus datos almacenados en la base de datos a un documento en formato XML.

 

Licencia Creative Commons

Este artículo publicado en TicArte pertenece a Rafa Morales y está protegido bajo una Licencia Creative Commons.

Ir arriba