Temas > Programacion > Php > UPDATE Modificacion de un registro de una taba php
Julio

UPDATE - Modificación de un registro de una tabla en php
De las actividades con tablas esta es la más larga. Vamos a 
resolverlo implementando tres páginas, la primera un formulario 
de consulta del mail de un alumno, la segunda otro formulario que 
nos permita cargar su mail modificado y la última registrará el cambio 
en la tabla.
El formulario de consulta del mail del alumno es similar a problemas 
anteriores:
<html>
<head>
<title>Problema</title>
</head>
<body>
<form action="pagina2.php" method="post">
Ingrese el mail del alumno:
<input type="text" name="mail"><br>
<input type="submit" value="buscar">
</form>
</body>
</html>
La segunda página es la más interesante y con conceptos nuevos:
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$conexion=mysql_connect("localhost","root","z80") or
  die("Problemas en la conexion");
mysql_select_db("phpfacil",$conexion) or
  die("Problemas en la selección de la base de datos");
$registros=mysql_query("select * from alumnos
              where mail=`$_POST[mail]`",$conexion) or
  die("Problemas en el select:".mysql_error());
if ($reg=mysql_fetch_array($registros))
{
?>
  <form action="pagina3.php" method="post">
  Ingrese nuevo mail:
  <input type="text" name="mailnuevo" value="<?php echo $reg[`mail`] ?>">
  <br>
  <input type="hidden" name="mailviejo" value="<?php
  echo $reg[`mail`] ?>">
  <input type="submit" value="Modificar">
  </form>
<?php
}
else
  echo "No existe alumno con dicho mail";
?>
</body>
</html>
Lo primero que podemos observar es que si el if se verifica 
verdadero se ejecuta un bloque que contiene código HTML:
<?php
if ($reg=mysql_fetch_array($registros))
{
?>
  <form action="pagina3.php" method="post">
  Ingrese nuevo mail:
  <input type="text" name="mailnuevo" value="<?php
echo $reg[`mail`] ?>">
  <br>
  <input type="hidden" name="mailviejo" value="<?php echo $reg[`mail`]
?>">
  <input type="submit" value="Modificar">
  </form>
<?php
}
?>
Es decir que podemos disponer bloques de PHP dispersos dentro 
de la página. Otro concepto importante es como enviar el mail del
primer formulario a la tercer página, esto se logra con los controles 
de tipo "hidden", este tipo de control no se visualiza en el formulario 
pero se envía al presionar el botón submit.
Si queremos que el control text se inicialize con el mail ingresado en 
el formulario anterior debemos cargar la propiedad value con dicho valor:
 <input type="text" name="mailnuevo" value="<?php echo $reg[`mail`] ?>">
Por último la pagina3.php es la que efectúa la modificación de la tabla

propiamente dicha. Con el mail ingresado en la pagina1.php, el mail 
modificado en la pagina2.php se efectúa el update.
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$conexion=mysql_connect("localhost","root","z80") or
 die("Problemas en la conexion");
mysql_select_db("phpfacil",$conexion) or
 die("Problemas en la selección de la base de datos");
$registros=mysql_query("update alumnos
                set mail=`$_POST[mailnuevo]`
                where mail=`$_POST[mailviejo]`",$conexion) or
 die("Problemas en el select:".mysql_error());
 echo "El mail fue modificado con exito";
?>
</body>
</html>
Tengamos en cuenta que el segundo formulario nos envía dos datos: 
<?php
$_POST[mailnuevo] y
$_POST[mailviejo].
?>













¿Has olviado tu contraseña?

Pulsa aquí para registrate




Google






LunMarMieJueVieSabDom
    123
45678910
11121314151617
181920 21222324
252627282930 

Jueves 21 de Noviembre 2024
Semana 47

..............................................................................................................................................................................................................................................
(Contacto)..
Esta web utiliza cookies para obtener datos estadísticos de la navegación de sus usuarios. Política de privacidad y Aviso legal