MySQL – Editar Registros
- 26/03/2011
- 6:34 pm
En esta clase vamos a ver como Editar Registros en la Base de Datos, como ejemplo vamos a seguir utilizando una agenda.
Para editar los datos guardados en nuestras tablas utilizamos la sentencia UPDATE explicada en Introduccion a SQL.
El proceso mostrara primero un formulario con los datos que tenemos guardados, luego el usuario puede modificar los datos y enviar el formulario. Al recibir los datos desde el formulario creamos una consulta SQL y lo enviamos a MySQL con la función mysql_query.
Consultado a la MySQL
En este paso vamos a obtener los datos del registro seleccionado, para ello utilizamos como filtro el identificador del registro el cual lo estamos pasando como parámetro GET.
// Definimos el ID de la persona a editar. $id = htmlentities($_GET['id']); // Hacemos el filtrado, y consulta. $sql = "SELECT * FROM personas WHERE id='".$id."' LIMIT 1"; $query = mysql_query($sql,$link); $row = mysql_fetch_assoc($query); |
Para entender este prosedimiento tienen que aver leido las clases anteriores. En el cual explicamos cada paso y explicamos de donde obtenemos el id.
Mostrando datos
Con la consulta y el filtrado del paso anterior va a devolver los datos de cuya persona tenga el parámetro enviado vía GET
<form action="editar.php?id=<?=$id?>" method="post" > <strong>Nombre</strong> <input type="text" name="nombre" value="<?=$row['nombre']?>" /> <strong>Teléfono</strong> <input type="text" name="telefono" id="telefono" value="<?=$row['telefono']?>" /> <strong>Dirección</strong> <input type="text" name="direccion" id="direccion" value="<?=$row['direccion']?>" /> <strong>Foto</strong> <input type="text" name="foto" id="foto" value="<?=$row['foto']?>" /> <input type="submit" name="agendar" value="Editar" /> </form> |
En el formulario va a parecer inputs con los datos obtenidos de la consulta, en el cual se puede editar y cuando finalizemos apretamos el boton Editar y hará una actualización ( UPDATE ) a los datos de nuestra persona.
Editando los datos
Este paso es el siguiente después de apretar el boton Editar
if($_POST['agendar']) { // Verificamos que no alla ningun dato sin rellenar. if(!empty($_POST['nombre']) || !empty($_POST['telefono']) || !empty($_POST['direccion'])) { // Pasamos los datos de los POST a Variables, y le ponemos seguridad. $nombre = htmlentities($_POST['nombre']); $telefono = htmlentities($_POST['telefono']); $direccion = htmlentities($_POST['direccion']); $foto = htmlentities($_POST['foto']); // Insertamos los datos en la base de datos, si da algun error lo muestra. $sql = "UPDATE personas SET nombre='".$nombre."', telefono='".$telefono."', direccion='".$direccion."', foto='".$foto."' WHERE id='".$id."'"; mysql_query($sql,$link) or die(mysql_error()); // Mostramos un mensaje diciendo que todo salio como lo esperado $msg = "Persona editada correctamente"; } else { // Si hay un dato sin rellenar mostramos el siguiente texto. $msg = "Falta rellenar algun dato"; } } |
Lo que hace este código php es verificar que se apreto el boton Editar y tambien comprobar que los inputs no esten vacíos. Tambien le pone un poco de seguridad, para evitar inyecciones. Una vez que los 2 if nos dio como resultado true, actualiza los datos de la persona a editar.
Esta clase esta asociada con el archivo editar.php
Hilo donde están todos los artículos para aprender PHP
Posts Relacionados
[…] Clase 1: Primeros pasos en PHP Clase 2: Variables y Constantes Clase 3: Estructura condicional (if/elseif/else) Clase 4: Tipos de bucles (while, Do while, for y foreach) Clase 5: Envío de datos de un formulario Clase 6: Vectores, Array, Arreglos en PHP Clase 7: Funciones en PHP Clase 8: Base de Datos Clase 9: MySQL – Crear conexión Clase 10: MySQL – Introducción SQL Clase 11: MySQL – Insertar datos Clase 12: MySQL – Consultar datos en MySQL Clase 13: MySQL – Editar registros […]