Buscador


En todo Internet
En Uterra.Com

Consultorio sexológico
El psicólogo responde
GRATIS
Preguntas y respuestas sobre sexualidad.

Contenidos


Ya sabemos como guardar datos en una base de datos y como leerlos. La siguiente tarea que tendremos que realizar con mucha frecuencia en nuestra Web es la actualización de esos datos, es decir, modificar los valores de los datos ya guardados.

Para actualizar datos, lo mismo que para mostrar todos los datos correspondientes a un registro desde un listado, necesitamos identificar cada registro. En este caso vamos a identificar los registros por su “id”.

Una variable, como ya vimos antes, la podemos pasar por la URL (como ya hicimos en este artículo), y ahora como practica para de una nueva forma de pasar datos, lo haremos mediante un formulario por el método POST.

Por tanto, para iniciar la actualización vamos a crear un formulario en el que introduciremos el id que queremos actualizar, y seguidamente tras enviar este dato, nos aparecerá un formulario que contiene los datos que queremos actualizar. En este formulario los modificaremos y los actualizaremos con la correspondiente consulta.

Por tanto, ahora tendremos que crear tres páginas, de ellas quizás pueda pasar desapercibido que en el form2.php la variable “id” se envía a través de un campo oculto (hidden) para ejecutar la actualización en la página de actualización.

======== form1.php
<html>

<head>
<title>Iniciar actualización.</title>
<META name='robot' content='noindex, nofollow'>
</head>

<body>

<div align="center">
    <table border="0" width="600" style="font-family: Verdana; font-size: 8pt" id="table1">
        <tr>
            <td colspan="2"><h3 align="center">Actualización de datos</h3></td>
        </tr>
        <form method="POST" action="form2.php">
        <tr>
            <td width="50%">&nbsp;</td>
            <td width="50%">&nbsp;</td>
        </tr>
        <tr>
            <td width="50%">
            <p align="center"><b>ID del registro a actualizar: </b></td>
            <td width="50%">
            <p align="center"><input type="text" name="id" size="20"></td>
        </tr>
        <tr>
            <td width="50%">&nbsp;</td>
            <td width="50%">&nbsp;</td>
        </tr>
        <tr>
            <td width="100%" colspan="2">
            <p align="center">
            <input type="submit" value="Iniciar actualización" name="B1"></td>
        </tr>
        </form>
    </table>
</div>

</body>

</html>

======== form2.php
<html>

<head>
<title>Datos a actualizar.</title>
<META name='robot' content='noindex, nofollow'>
</head>

<?php 
$id 
$_POST['id'];

include(
'abre_conexion.php');  

    
$query "select * from $tabla_db1 where id = '$id'";
    
$result mysql_query($query);

while (
$registro mysql_fetch_array($result)){

echo 
"
<body>

<div align='center'>
    <table border='0' width='600' style='font-family: Verdana; font-size: 8pt' id='table1'>
        <tr>
            <td colspan='2'><h3 align='center'>Actualice los datos que considere</h3></td>
        </tr>
        <tr>
            <td colspan='2'>En los campos del formulario puede ver los valores actuales, 
            si no se cambian los valores se mantienen iguales.</td>
        </tr>
        <form method='POST' action='actualiza.php'>
        <tr>
            <td width='50%'>&nbsp;</td>
            <td width='50%'>&nbsp;</td>
        </tr>
        <tr>
            <td width='50%'><p align='center'><b>Nombre: </b></td>
            <td width='50%'><p align='center'><input type='text' name='nombre' size='20' value='"
.$registro['nombre']."'></td>
        </tr>
        <tr>
            <td width='50%'><p align='center'><b>E-mail:</b></td>
            <td width='50%'><p align='center'><input type='text' name='email' size='20' value='"
.$registro['email']."'></td>
        </tr>
        <tr>
            <td width='50%'>&nbsp;</td>
            <td width='50%'>&nbsp;</td>
        </tr>
        <input type='hidden' name='id' value='
$id'>
        <tr>
            <td width='100%' colspan='2'>
            <p align='center'>
            <input type='submit' value='Actualizar datos' name='B1'></td>
        </tr>
        </form>
    </table>
</div>
"
;
}
include(
'cierra_conexion.php');  
?>
</body>

</html>

======== actualiza.php
<html>

<head>
<title>Actualizacion completada.</title>
<META name='robot' content='noindex, nofollow'>
</head>

<body>

<?php
// Actualizamos en funcion del id que recibimos

$id $_POST['id'];

$nombre $_POST['nombre'];
$email $_POST['email'];
$fecha date("d-m-Y");

include(
'abre_conexion.php');  

$sSQL="Update $tabla_db1 Set nombre='$nombre',email='$email',fecha='$fecha' where id='$id'";
mysql_query($sSQL);

include(
'cierra_conexion.php');  

echo 
"
<p>Los datos han sido actualizados con exito.</p>

<p><a href='javascript:history.go(-1)'>VOLVER ATRÁS</a></p>

<p><a href='javascript:history.go(-2)'>INICIO</a></p>
"
;
?>

</body>

</html>