Programación básica en PHP( modificar y php embebido)


En esta ocasión veremos como insertar código php dentro de HTML y aprovecharemos para crear el modulo de modificar.

Lo primero sera explicar el proceso de un típico modulo de modificaciones,

  1. Solicitar la llave primaria o clave para buscar el registro a modificar
  2. Presentar la información que existe del registro en cuestión
  3. Admitir la modificación de los datos en pantalla
  4. Grabar las modificaciones.

Vamos con el primer paso, para lo cual necesitaremos una pagina sencilla donde se nos solicite la clave, tal y como vemos en la imagen

Ahora vamos con el código fuente:

Como vemos de este no hay mucho que comentar, lo único que podríamos agregar sería un javascript que validara el formato numérico de la clave.

Ahora para el formulario de modificar, que presentara la información actual y nos dará acceso a modificarla, me voy a ahorrar un poco de teclas modificando el ya existente formulario de altas, y agregando dentro del mismo el código php, así que recordemos como se ve el formulario de altas

Aproveche este formulario debido a que ya tiene las validaciones, ya que un punto importante es considerar que si en el modulo de altas fue importante la validación de los datos, esta actividad se convierte en indispensable en el modulo de modificar para impedir que una modificación altere de forma indebida los datos almacenados.

El primer cambio a realizar sera cambiar su nombre, como podemos ver en el código del formulario de búsqueda que se presentó al inicio del post, este envía la información a un php llamado modifica.php, así que ese sera el nombre que le daremos.

EL navegador tomara el archivo «modifica.php» y lo que no este entre las etiquetas «» será tratado como HTML y javascript respectivamente, así que lo único que debemos hacer es agregar los códigos php necesarios de esta forma obtenemos lo que se denomina un código php embebido en HTML, así que veamos la primera modificación al formulario.

Como vemos en el recuadro rojo el código php se agregó antes de la pagina, con esto logramos que el código php busque la información en la base de datos y la cargue en la variable $registro, si observa es similar al código en el modulo de eliminar.

Ahora vamos a ver la segunda modificación:

En este caso, observamos que en las etiquetas «input» se agrego la clausula value y dentro de esta se inserto el código php, con esto lo que hacemos es usar la instrucción «echo» para mandar a escribir en la propiedad value el valor de la variable que almacena el valor correspondiente, pero otro detalle a observar es que el «input» que le corresponde a la clave es un «hidden» es decir, estará presente en el formulario, pero no se vera, esto se debe a que es un error permitir la modificación de la clave principal, dado que eso ocasionaría que los registros de otras tablas relacionadas perdieran la relación, con la consiguiente perdida de información.

En el segundo bloque podemos observar que fue colocado después de los «select» para la fecha, esto se debe a que necesitamos que ya estén presentes para modificar su contenido.

Al extraer la fecha de la base de datos, se extrae como una cadena, razon por la que debemos usar en el segundo bloque la instrucción «strtotime», que se encarga de convertir una cadena en fecha, después de eso usamos la instrucción «date», para extraer el año, el mes y el día de la fecha, para ello se usan los modificadores «Y», «m» y «d» de la instrucción.

Para modificar los «select» no podemos decirle directamente que valor deben tomar, sino debemos indicarle que numero de elemento de la lista deben tomar, para ellos debemos saber que los elementos de la lista se numeran a partir del cero, por ello para convertir el año a su valor en la lista le restamos 1960 que es el año en que comienza en la lista para que nos de como resultado el numero de elemento que le corresponde.

En los casos de mes y día solo se les resta 1 dado que las listas comienzan en 1 y los indices deben comenzar en cero.

Observe como al final de este bloque se usa la instrucción echo para mandar a ejecutar códigos de javascript que modifican los elementos seleccionados de cada select, y se manda a ejecutar la instrucción de javascript que carga la lista de días según el mes y el año seleccionados.

Con todo esto ya se presenta la información de el registro buscado y se puede modificar la información, ahora les mostramos como se vería al ejecutarlo

La información ya modificada es enviada a actualiza.php, del cual se presenta el código a continuación:

En este programa lo único que hacemos es crear una consulta con la clausula update que modificara los datos de el registro, las demás instrucciones de php ya han sido descritas en los otros módulos anteriores.

Les dejo el enlace para descargar el ejemplo

http://dl.dropbox.com/u/26498694/ejemplo%20modificar.rar

8 Comentarios

    1. Claro que si, cualquier colaboración es bien recibida con mucho gusto.

      Por cierto el modulo aun tiene unos detalles que hay que corregir, pero son menores, por ejemplo, hay que agregar un boton de cancelar al programa que tiene el php embebido, solo que al publicar el post no lo agregue para hacer las modificaciones de forma gradual y no se fueran a perder entre tanto codigo

      De nuevo gracias por tus comentarios y por tus aportes

      Me gusta

¿Qué estas pensando?

Este sitio utiliza Akismet para reducir el spam. Conoce cómo se procesan los datos de tus comentarios.