Foros del Web » Programando para Internet » PHP »

acerca de actualizar registros...una consultita...

Estas en el tema de acerca de actualizar registros...una consultita... en el foro de PHP en Foros del Web. necesito actualizar un registro en una base de datos y quiero saber si la idea que voy a plantear es la correcta: tengo mi pagina ...
  #1 (permalink)  
Antiguo 04/10/2004, 09:53
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 13 años, 3 meses
Puntos: 0
acerca de actualizar registros...una consultita...

necesito actualizar un registro en una base de datos y quiero saber si la idea que voy a plantear es la correcta:

tengo mi pagina de navegacion de registros de donde obtengo el id del registro...luego voy a una pagina donde pueda ingresar los datos, y estos los envio a una pagina de actualizacion donde obtengo el id de la pagina de navegacion y los datos de la pagina de actualizacion y hago el update, verdad?

ahora la sintaxis seria:?

"UPDATE archivos (id, fecha, tema, titulo, resumen, texto, leyenda, archivo_binario) VALUES ('', '$fecha', '$tema', '$titulo', '$resumen', '$texto','$leyenda','$binario_contenido')"

cierto?, pero donde pongo " WHERE id=?$valorx " y que hago con el id ? no lo inserto verdad? o sea seria mas o menos asi:

"UPDATE archivos WHERE id=?$valorx (fecha, tema, titulo, resumen) VALUES ('$fecha', '$tema', '$titulo', '$resumen')"

o asi?

"UPDATE archivos WHERE id=?$valorx (id, fecha, tema, titulo, resumen, texto, leyenda, archivo_binario) VALUES ('', '$fecha', '$tema', '$titulo', '$resumen', '$texto','$leyenda','$binario_contenido')"

o de ninguna de las dos formas?

ayudame por favor
__________________
"How do you define Real?"
  #2 (permalink)  
Antiguo 04/10/2004, 10:10
 
Fecha de Ingreso: septiembre-2004
Mensajes: 72
Antigüedad: 13 años, 3 meses
Puntos: 0
Amigo, el update no es asi, ahi lo que muestras es la sintaxis de un insert (si lo fuera)

Asi seria:

update archivos set id=$id,fecha=$fecha where id=$id

Recuerda, la sintaxis del update es

UPDATE NOMBRE_DE_TABLA SET NOMBRE_CAMPO=VALOR_NUEVO,NOMBRE_DE_CAMPO=VALOR_NUE VO,ETC,ETC,ETC,ETC WHERE ALGO=ALGO AND OTRO_ALGO=OTRO_ALGO

Cuenta como te fue
Saludos
__________________
Pablo F. Savino
---------------

Para aficionados a la Simulacion Aerea Virtual ,
visiten:
http://www.cargovirtual.com
  #3 (permalink)  
Antiguo 04/10/2004, 10:13
 
Fecha de Ingreso: septiembre-2004
Mensajes: 72
Antigüedad: 13 años, 3 meses
Puntos: 0
Me olvidaba

el ID a menos que necesites actualizarlo seria algo asi

update archivos set id=$id where id=$id

Generalmente un ID no se actualiza, porque el ID (no se en tu caso) solo es para identificar el registro.

Saludos
__________________
Pablo F. Savino
---------------

Para aficionados a la Simulacion Aerea Virtual ,
visiten:
http://www.cargovirtual.com
  #4 (permalink)  
Antiguo 04/10/2004, 11:07
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 13 años, 3 meses
Puntos: 0
este error me sale:
Warning: fread(): supplied argument is not a valid stream resource in c:\archivos de
programa\apache group\apache\htdocs\acceso\modificando.php on line 15

esta es la linea 15:

$binario_contenido = addslashes(fread(fopen($binario_nombre_temporal, "rb"), filesize($binario_nombre_temporal)));

que es donde cargo/actualizo la imagen en formato binario...

a ver si saben de que es el error... mientras pruebo actualizar sin ese campo...
__________________
"How do you define Real?"
  #5 (permalink)  
Antiguo 04/10/2004, 11:23
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 13 años, 3 meses
Puntos: 0
esta bien esto?:

$consulta_modificar = "UPDATE archivos SET fecha=$fecha, tema=$tema, titulo=$titulo, resumen=$resumen, texto=$texto, leyenda=$leyenda WHERE id=$ident";

porque lo pruebo sin el error anterior (sin la imagen) y no me funciona, puede estar en esa sintaxix el error?
de todos modos funciona asi:
pagina de navegacion (vermodificar.php) permite navegar los registros (ningun problema) contiene un campo oculto "delet" que contiene el id del registro...y nada mas.
pagina de modificacion (modificar.php) que recibe el id a traves de get en $nombre
y me permite ingresar los dato a modificar y llama a la pagina que realiza la accion de modificar que es:
modificando.php que recibe el id de la pagina anterior en "$ident" a traves de un post
la variable $nombre que viene de la pagina de navegacion de registros que es la que contiene el id y actualiza con este codigo:

$ident= $_POST[$nombre];
// $binario_contenido = addslashes(fread(fopen($binario_nombre_temporal, "rb"), filesize($binario_nombre_temporal))); este es el que da el error
$fecha = $_POST['anio']."-".$_POST['mes']."-".$_POST['dia'];
$tema = $_POST['tema'];
$titulo = $_POST['titulo'];
$resumen = $_POST['resumen'];
$texto = $_POST['texto'];
$leyenda= $_POST['leyenda'];


//modificamos los datos en la BD.
$consulta_modificar = "UPDATE archivos set fecha=$fecha, tema=$tema, titulo=$titulo, resumen=$resumen, texto=$texto, leyenda=$leyenda where id=$ident";
mysql_query($consulta_insertar,$conexion) or die("No se pudo insertar los datos en la base de datos.");
header("location: formulario.php"); // si ha ido todo bien
exit;

eso es todo pero me sale "No se pudo insertar los datos..."
sera por el id que lo estoy pasando mal? ayuda por favor...
__________________
"How do you define Real?"
  #6 (permalink)  
Antiguo 04/10/2004, 11:29
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 13 años, 3 meses
Puntos: 0
mmm, ahora pasa pero no actualiza por lo que no me quedan dudas que es el id el que esta pasando mal, pueden decirme como pasar el id en un campo oculto de una pagina "x" a una variable en una pagina "y" para luego llevarla a una variable en una pagina "z"...
__________________
"How do you define Real?"
  #7 (permalink)  
Antiguo 04/10/2004, 11:36
 
Fecha de Ingreso: septiembre-2004
Ubicación: Viviendo en Manresa(Barcelona)
Mensajes: 230
Antigüedad: 13 años, 2 meses
Puntos: 0
Podria ser problema de las comillas de las variables que actualizas
prueba:

fecha='$fecha' etc... o
fecha=\"$fecha\" etc..
fecha=".$fecha."
  #8 (permalink)  
Antiguo 04/10/2004, 11:53
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 13 años, 3 meses
Puntos: 0
si le saco las comillas simples me dice que no pudo insertar los datos y con las comillas pasa pero no modifica y como no se mucho no se que mas hacer, por eso si es que pueden ayudarme con el paso de variables de una pagina a otra para ver si esta bien ono me ayudarian harto...
__________________
"How do you define Real?"
  #9 (permalink)  
Antiguo 04/10/2004, 12:08
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 13 años, 3 meses
Puntos: 0
ESTA BIEN ESTO O NO?

$consulta_insertar = "UPDATE archivos set fecha='$fecha', tema='$tema', titulo='$titulo', resumen='$resumen', texto='$texto', leyenda='$leyenda' WHERE 'id'='$ident' LIMIT 1";

mysql_query($consulta_insertar,$conexion) or die("No se pudo insertar los datos en la base de datos.");

USAR mysql_query PARA ACTUALIZAR?
__________________
"How do you define Real?"
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 07:18.