Editar Registros con Función PHP y MySQL: Ejemplos
Editar Registros con Función PHP y MySQL. En este artículo nos enfocaremos en la modificación de datos ya almacenados en la base de datos utilizando una función PHP para que la edición sea de manera dinámica, sin embargo, pareciera que es muy complicado, pero nosotros detallaremos lo sencillo que es implementar funciones.
Si bien necesitamos de estructuras HTML para manejar una interfaz más amena, en este ejemplo de edición necesitaremos los siguientes campos: Nombre, Apellidos lo cual nos apoyaremos en formularios. Ahora nos damos cuenta que tienes que procesar y agregar todos los elementos del formulario para modificar en nuestra DB de manera personalizada. Normalmente se utiliza la consulta SQL siguiente:
Editar Registros con Función PHP y MySQL
UPDATE table_name SET column1=value, column2=value2,... WHERE some_column=id_value
Ejemplo real de usabilidad
$consulta = "UPDATE mi_tabla SET nombres='Juan' WHERE id=2";
Ahí lo tenemos, pero ahora para volver más dinámico nuestras consultas veremos la aplicación de funciones estructuradas para tal fin.
Ejemplo #01 Utilizando funciones para edición
a) Crear la base de datos y su respectiva tabla
CREATE TABLE IF NOT EXISTS `tabla_demo` ( `id` int(11) NOT NULL auto_increment, `nombres` varchar(25) NOT NULL, `apellidos` varchar(35) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=13 ; -- -- Volcar la base de datos para la tabla `tabla_demo` -- INSERT INTO `tabla_demo` (`id`, `nombres`, `apellidos`) VALUES (3, 'Juan Jose', 'Albarracin Flores'), (4, 'Meliza Estela', 'Loza Morales'), (5, 'Mario', 'Ruiz Sotomayor'), (6, 'Luisa Eugenia', 'Candia Quintana'), (7, 'Nohelia Maria', 'Valdivia Valdivia'), (8, 'Nilda Elena', 'Castillo Garcia'), (11, 'Miguel', 'Cervantes sidra');
b) la conexión con el servidor de base de datos
function db_query($query) { $connection = mysqli_connect("localhost","root","root","baul"); $result = mysqli_query($connection,$query); return $result; }
c) La consulta de Actualización a partir de una ID dentro de la Clausula WHERE
function edit($tblname,$form_data,$field_id,$id){ $sql = "UPDATE ".$tblname." SET "; $data = array(); foreach($form_data as $column=>$value){ $data[] =$column."="."'".$value."'"; } $sql .= implode(',',$data); $sql.=" where ".$field_id." = ".$id.""; return db_query($sql); }
d) Nuestro HTML para mostrar formularios de edición
<body> <div class="main-wrapper"> <h1>Editar Registros con Función PHP </h1> <br><br> <?php include("function.php");?> <table border="1" width="100%"> <tr> <th width="41%">Nombres</th> <th width="47%">Apellidos</th> <th width="12%">Opcion</th> </tr> <?php $sql = "select * from tabla_demo"; $result = db_query($sql); while($row = mysqli_fetch_object($result)){ ?> <tr> <td><?php echo $row->nombres;?></td> <td><?php echo $row->apellidos;?></td> <td> <a class="btn btn-primary" href="editar.php?id=<?php echo $row->id; ?>"> <i class="fa fa-pencil fa-lg" aria-hidden="true"></i></a> </td> </tr> <?php } ?> </table> </div> </body>
Resultado en el Navegador

Ventana de edición de registros.

