Foros del Web » Programando para Internet » PHP »

Ayuda.. No Actualiza Registro

Estas en el tema de Ayuda.. No Actualiza Registro en el foro de PHP en Foros del Web. Amigos: Tengo un problema. He creado una página que muestra los datos de un registro. En esa página hay un botón Modificar registro que me ...
  #1 (permalink)  
Antiguo 27/11/2005, 15:18
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Ayuda.. No Actualiza Registro

Amigos:

Tengo un problema. He creado una página que muestra los datos de un registro. En esa página hay un botón Modificar registro que me envía a la página Modificar donde se muestra los datos del registro y se pueden modificar dichos datos.. En esta página hay un boton Actualizar que al hacer clic automáticamente debe actualizar los datos y mostrarlos a la vez.
El problema es que Sí actualiza pero no sólo el registro actual sino todos los registros de la tabla.
He buscado informaci{on para averiguar y solucionar el problema y encontr{e que tenía que poner una condicional:

$sql="UPDATE rugs_carpets SET codrugs='$codrugs',name='$name', style='$style',shape='$shape',color='$color',width ='$width', height='$height',weight='$weight',time_left_day='$ time_left_day',time_left_hour='$time_left_hour',ti me_left_obs='$time_left_obs',shipping_cost='$shipp ing_cost',price='$price',image_1_binario='$binario _contenido',image_1_name='$binario_nombre', image_1_peso='$binario_peso',image_1_tipo='$binari o_tipo',description='$description' WHERE id='$id'";

Y cuando le pongo esto no actualiza. Cuál puede ser el error. Ayuda Please. Aquí les dejo el código.

<?php
//Primero, arranca el bloque PHP y checkea si el archivo tiene nombre. Si no fue asi, te remite de nuevo al formulario de inserción:
// No se comprueba aqui si se ha subido correctamente.
if (empty($_FILES['image_1']['name'])){
header("location: rugs_carpets_formulario_modificar.php?proceso=falt a_indicar_fichero"); //o como se llame el formulario ..
exit;
}
//establece una conexión con la base de datos.
$conexion = mysql_connect("localhost","adwebper_nano","nano") or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db("adwebper_ppunchay",$conexion) or die("No se puede seleccionar BD"); // tu_bd es el nombre de la Base de datos .. por siaca.
$sql="SELECT * FROM rugs_carpets WHERE id='".$_GET['id']."'";
$resultado=mysql_query($sql,$conexion) or die(mysql_error());
// archivo temporal (ruta y nombre).
$binario_nombre_temporal=$_FILES['image_1']['tmp_name'] ;
// leer del archvio temporal .. el binario subido.
// "rb" para Windows .. Linux parece q con "r" sobra ...
$binario_contenido = addslashes(fread(fopen($binario_nombre_temporal, "rb"), filesize($binario_nombre_temporal)));
// Obtener del array FILES (superglobal) los datos del binario .. nombre, tabamo y tipo.
$binario_nombre=$_FILES['image_1']['name'];
$binario_peso=$_FILES['image_1']['size'];
$binario_tipo=$_FILES['image_1']['type'];
$sql="UPDATE rugs_carpets SET codrugs='$codrugs',name='$name', style='$style',shape='$shape',color='$color',width ='$width', height='$height',weight='$weight',time_left_day='$ time_left_day',time_left_hour='$time_left_hour',ti me_left_obs='$time_left_obs',shipping_cost='$shipp ing_cost',price='$price',image_1_binario='$binario _contenido',image_1_name='$binario_nombre', image_1_peso='$binario_peso',image_1_tipo='$binari o_tipo',description='$description' ";
$resultado=mysql_query($sql,$conexion);
header("location:rugs_carpets_formulario_mostrar.p hp"); // si ha ido todo bien
exit;
?>

Saludos y gracias de antemano.
  #2 (permalink)  
Antiguo 27/11/2005, 15:27
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
Primero te pediría que encierres el código entre [ php ] y [ /php ] para que sea más legible.
Igual, la pregunta que te hago es por donde le pasas el dato de la variable $id ?
Podés pasarlo como un
<input type="hidden" name="id" value="<?php echo $id; ?>">

por ejemplo
  #3 (permalink)  
Antiguo 27/11/2005, 15:32
Avatar de ramoncito  
Fecha de Ingreso: febrero-2003
Ubicación: Viña del Mar
Mensajes: 224
Antigüedad: 21 años, 1 mes
Puntos: 10
El Campo id de la base de datos es texto o es número?
si es número la setencia deberia ser where id=$id
si es texto la setencia debería ser where id='$id'

verifica que contiene el $sql coloca debajo de el un echo $sql."<br>" y comenta el $resultado y el header asi veras que resultado te está entregando, y recuerda que con el register global on tienes que colocar $_GET['id'] o $_POST['id'] dependiendo el caso...
__________________
:pensando: Ramon Martinez... Chile :adios:
  #4 (permalink)  
Antiguo 27/11/2005, 16:04
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Cita:
Iniciado por Seppo
Primero te pediría que encierres el código entre [ php ] y [ /php ] para que sea más legible.
Igual, la pregunta que te hago es por donde le pasas el dato de la variable $id ?
Podés pasarlo como un
<input type="hidden" name="id" value="<?php echo $id; ?>">

por ejemplo
Hola Seppo:
Gracias por responder. El código que me indicas <input..........> dónde lo coloco y para qué sirve?
Ahora con respecto a tu pregunta por donde le pasas el dato de la variable $id ? A qué te refieres con eso?

SAludos y gracias otra vez.
  #5 (permalink)  
Antiguo 27/11/2005, 16:09
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Cita:
Iniciado por ramoncito
El Campo id de la base de datos es texto o es número?
si es número la setencia deberia ser where id=$id
si es texto la setencia debería ser where id='$id'

verifica que contiene el $sql coloca debajo de el un echo $sql."<br>" y comenta el $resultado y el header asi veras que resultado te está entregando, y recuerda que con el register global on tienes que colocar $_GET['id'] o $_POST['id'] dependiendo el caso...
Hola Ramoncito:
El campo Id de la bd es número. Ya modifiqué y le puse como me indicaste where id=$id pero igual no funciona.

¿Qué es el register global ?

SAludos y gracias.
  #6 (permalink)  
Antiguo 27/11/2005, 16:24
 
Fecha de Ingreso: julio-2005
Mensajes: 172
Antigüedad: 18 años, 9 meses
Puntos: 0
Cita:
Iniciado por Seppo
Primero te pediría que encierres el código entre [ php ] y [ /php ] para que sea más legible.
Igual, la pregunta que te hago es por donde le pasas el dato de la variable $id ?
Podés pasarlo como un
<input type="hidden" name="id" value="<?php echo $id; ?>">

por ejemplo
Hola Sepo:

Sos Grande. Hice lo que me indicaste, lo del input. Lo puse en el formulario de modificación y FUNCIONA. Muchas gracias.

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 21:40.