Foros del Web » Programando para Internet » PHP »

modificar registro

Estas en el tema de modificar registro en el foro de PHP en Foros del Web. hola es que me manda error por k elcampo llave es nu_control <?php include("config.php"); $nu_control=$_POST["nu_control"]; $contrasena=$_POST["contrasena"]; $nombre=$_POST["nombre"]; $sql = "SELECT * FROM egresado WHERE nu_control ...
  #1 (permalink)  
Antiguo 06/06/2007, 00:35
 
Fecha de Ingreso: enero-2005
Mensajes: 386
Antigüedad: 19 años, 3 meses
Puntos: 3
modificar registro

hola es que me manda error por k elcampo llave es nu_control

<?php
include("config.php");

$nu_control=$_POST["nu_control"];
$contrasena=$_POST["contrasena"];
$nombre=$_POST["nombre"];

$sql = "SELECT * FROM egresado WHERE nu_control = $nu_control"

$Result = mysql_query($sql);

$sql = "UPDATE egresado SET nombre='$nombre',contrasena='$contrasena'";

$Result = mysql_query($sql);




$Result=mysql_query($query) or die (mysql_error());
$filasafectadas=mysql_affected_rows();
if ($filasafectadas==1){
echo "Usuario Modificado";
}else{
echo "Usuario No Modificado";
}

mysql_close($conecta);

?>
  #2 (permalink)  
Antiguo 06/06/2007, 02:26
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 9 meses
Puntos: 2114
Re: modificar registro

Hola Alphabravo.

Tienes un código curioso. :P

Para empezar, deberías de cerrar la cadena de la primera vez que declaras $sql con un punto y coma, supongo que será ese el error que te da. Debería ir así:
Código PHP:
$sql "SELECT * FROM egresado WHERE nu_control = $nu_control" 
En segundo lugar, no estás relalizando ninguna consulta a la base de datos, ya que, haces algo extraño que no entiendo.
No entiendo, por ejemplo, porqué declaras las variables por duplicado (además, luego no las usas, porque usas $query que no está declarado por ningún sitio).
Si declaras que $var es igual a 5, y mas abajo especificas que $var sea igual a 10, y mas abajo llamas a $var, pues será 10.

Deberías de hacer algo así:

Código PHP:
mysql_query("UPDATE egresado SET nombre='".$nombre."',contrasena='".$contrasena."' where nu_control='".$nu_control."' limit 1"); 
Si no pones un where al final, entonces cambiarán todos los registros. Es decir, si tienes 1000 registros, todos tendrán el mismo nombre y contraseña, así que ten cuidado de poner siempre al final ese condicional. He puesto a modo de ejemplo un limit 1, que te limita el update a un solo registro, de esto en este caso puedes prescindir, ya que lo limitas con nu_control (he supuesto que en tu tabla tienes un campo llamado nu_control, si no es así, cámbialo por el nombre correcto).

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:47.