Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

actualizar un campo de un registro sin modificar los demas campos

Estas en el tema de actualizar un campo de un registro sin modificar los demas campos en el foro de Bases de Datos General en Foros del Web. Hola , muchas gracias la verdad es que me urge , veran tengo una pagina con un formulario para actualizar varios campos , ya anteriormente ...
  #1 (permalink)  
Antiguo 01/12/2004, 11:54
 
Fecha de Ingreso: noviembre-2004
Mensajes: 13
Antigüedad: 19 años, 5 meses
Puntos: 2
actualizar un campo de un registro sin modificar los demas campos

Hola , muchas gracias la verdad es que me urge , veran tengo una pagina con un formulario para actualizar varios campos , ya anteriormente fueron insertados sus valores en mysql ,en esta pagina seleccioo un nombre para modificar sus campos , el problema es que actualizo un solo campo , y los demas como no recibieron ningun valor nuevo , los toma en blanco y los almacena asi en blanco , no respeta lo que tenia anteriormente guardado, no se como hacerle ya sea que para que al seleccionar el nombre me llene los campos del formulario con sus contenidos , o que solo actualize los campos que quiera y no todos , gracia por la ayuda este es codigo de la pagina del formulario

<HTML>
<HEAD>
<TITLE>actualizar1.php</TITLE>
</HEAD>
<BODY>
<div align="center">
<h1>Actualizar un registro</h1>
<br>
<?
//Conexion con la base
mysql_connect("localhost","","");

echo '<FORM METHOD="POST" ACTION="actualizar2.php">Nombre<br>';

//Creamos la sentencia SQL y la ejecutamos
$sSQL="Select nombre From clientes Order By nombre";
$result=mysql_db_query("ejemplo",$sSQL);

echo '<select name="nombre">';

//Generamos el menu desplegable
while ($row=mysql_fetch_array($result))
{echo '<option>'.$row["nombre"];}
?>
</select>
<br>
Teléfono<br>
<INPUT TYPE="TEXT" NAME="telefono"><br>
Domicilio<br>
<INPUT TYPE="TEXT" NAME="domicilio"><br>
Domicilio para notificaciones<br>
<INPUT TYPE="TEXT" NAME="domicilion"><br>
<INPUT TYPE="SUBMIT" value="Actualizar">
</FORM>
</div>

</BODY>
</HTML>
para actualizar los campos el problema es que al actualizar un campo y los demas no , se quedan en blanco los actualiza asi , y elimina su contenido ,

<HTML>
<HEAD>
<TITLE>actualizar2.php</TITLE>
</HEAD>
<BODY>
<?
//Conexion con la base
mysql_connect("localhost","root","");

//Creamos la sentencia SQL y la ejecutamos
$sSQL="Update Clientes Set telefono='$telefono', domicilio='$domicilio' ,domicilion='$domicilion' Where nombre='$nombre'";
mysql_db_query("ejemplo",$sSQL);
?>

<h1><div align="center">Registro Actualizado</div></h1>
<div align="center"><a href="lectura.php">Visualizar el contenido de la base</a></div>

</BODY>
</HTML>
Ojala me puedan ayudar , no se donde se encuentre el error
  #2 (permalink)  
Antiguo 01/12/2004, 18:45
Avatar de baklao  
Fecha de Ingreso: noviembre-2004
Ubicación: Santa Ana - Isla de Margarita
Mensajes: 482
Antigüedad: 19 años, 5 meses
Puntos: 0
Tengo una idea mejor a ver si te sirve porque no concatenas los valores y preguntas si estan vacios por ejemplo:
Código PHP:
<?
//Conexion con la base
mysql_connect("localhost","root","");

//Creamos la sentencia SQL y la ejecutamos
$cadena="";
if (
$telefono!="")
 {
   
$cadena="telefono=".$telefono
 }
if (
$domicilio!="")
 {
   if (
$cadena=="")
      
$cadena="domicilio=".$domicilio;
      else
           
$cadena.="domicilio=".$domicilio;  
 }
if (
$domicilion!="")
 {
   if (
$cadena=="")
      
$cadena="domicilion=".$domicilion;
      else
           
$cadena.="domicilion=".$domicilion;  
 }

$sSQL="Update Clientes Set".$cadena."Where nombre='$nombre'";
mysql_db_query("ejemplo",$sSQL);
?>
prueba asi y me dices como te fue.

Saludos y Suerte
__________________
Atte. Mohamed :aplauso:

Última edición por baklao; 01/12/2004 a las 18:47
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 13:45.