Foros del Web » Programando para Internet » PHP »

actualizar todos mis registros de una tabla con un do(){}

Estas en el tema de actualizar todos mis registros de una tabla con un do(){} en el foro de PHP en Foros del Web. Hola estoy hace un rato tratando e actualizar todos los registros de una tabla de mi BD y este es mi codigo, pero , aunque ...
  #1 (permalink)  
Antiguo 11/03/2007, 14:53
 
Fecha de Ingreso: febrero-2006
Mensajes: 208
Antigüedad: 18 años, 2 meses
Puntos: 0
actualizar todos mis registros de una tabla con un do(){}

Hola estoy hace un rato tratando e actualizar todos los registros de una tabla de mi BD y este es mi codigo, pero , aunque lo he revisado varias veces me arroja un error

Código PHP:
<?php require_once('../Connections/conecta_arteenlinea.php'); ?>
<?php
mysql_select_db
($database_conecta_arteenlinea$conecta_arteenlinea);
$query_for "SELECT obras.foto, obras.id, obras_galeria.id_foto, obras_galeria.foto_galerias, obras_galeria.quien, obras_galeria.quien_galeria, obras_galeria.titulo, obras_galeria.nombre FROM obras, obras_galeria WHERE obras_galeria.foto_galerias = obras.foto";
$for mysql_query($query_for$conecta_arteenlinea) or die(mysql_error());
$row_for mysql_fetch_assoc($for);
$totalRows_for mysql_num_rows($for);
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php do { 


$id_foto $row_for['id_foto'];
$foto_galerias =$row_for['foto_galerias'];
$quien =$row_for['quien'];
$quien_galeria =$row_for['quien_galeria'];
$titulo =$row_for['titulo'];
$nombre =$row_for['nombre'];
$id $row_for['id'];

  
$query_for "UPDATE obras_galeria (id_foto, foto_galerias, quien, quien_galeria, titulo,nombre)";
 
$query_for.= "VALUES ('$id_foto','$id','$quien','$quien_galeria','$titulo','$nombre')";
 
$for mysql_query($query_for$conecta_arteenlinea) or die(mysql_error());;
  
   } while (
$row_for mysql_fetch_assoc($for)); ?>
   
   </body>
</html>
<?php
mysql_free_result
($for);
?>
el eeror que me arroja es un You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(id_foto, foto_galerias, quien, quien_galeria, titulo,nombre)VA


si alguen puede hechar un cable lo estare eternamente agradecido
__________________
michelson
-----------------
crossing snow mountains with a yamaha bike
  #2 (permalink)  
Antiguo 11/03/2007, 16:33
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 18 años, 9 meses
Puntos: 24
Re: actualizar todos mis registros de una tabla con un do(){}

Me parece que el problema se origina en la concatenación de estas 2 cadenas:
UPDATE obras_galeria (id_foto, foto_galerias, quien, quien_galeria, titulo,nombre)
y

VALUES ('$id_foto','$id','$quien','$quien_galeria','$titu lo','$nombre')

Al juntarlas, no colocas un espacio antes de VALUE, y por lo tanto el paréntesis de cierre y la palabra VALUE te quedan juntas, lo que provoca un error.
  #3 (permalink)  
Antiguo 11/03/2007, 16:58
 
Fecha de Ingreso: febrero-2006
Mensajes: 208
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: actualizar todos mis registros de una tabla con un do(){}

Hola gracias TolaWare por la respuesta, pero al parecer no es eso o me arroja otro error
mira aqui segui lo que me dijiste

Código PHP:
<?php do { 

$id_foto $row_for['id_foto'];
$foto_galerias =$row_for['foto_galerias'];
$quien =$row_for['quien'];
$quien_galeria =$row_for['quien_galeria'];
$titulo =$row_for['titulo'];
$nombre =$row_for['nombre'];
$id $row_for['id'];

  
$query_for "UPDATE obras_galeria (id_foto, foto_galerias, quien, quien_galeria, titulo,nombre)  VALUES ('$id_foto','$id','$quien','$quien_galeria','$titulo','$nombre')";
$for mysql_query($query_for$conecta_arteenlinea) or die(mysql_error());;
  
   } while (
$row_for mysql_fetch_assoc($for)); ?>
y me arrojo el siguiente error

Código PHP:
You have an error in your SQL syntaxCheck the manual that corresponds to your MySQL server version for the right syntax to use near (id_fotofoto_galeriasquienquien_galeriatitulo,nombre

GrACIAS DE TODAS FORMAS , SEGUIRE INTENTANDO

saludos
__________________
michelson
-----------------
crossing snow mountains with a yamaha bike
  #4 (permalink)  
Antiguo 11/03/2007, 17:25
Avatar de TheViejo  
Fecha de Ingreso: marzo-2007
Ubicación: Delante de mi Vetusto PC.
Mensajes: 29
Antigüedad: 17 años, 1 mes
Puntos: 3
Re: actualizar todos mis registros de una tabla con un do(){}

Hola michelson yo cambiaría tú

Código PHP:
 $query_for "UPDATE obras_galeria (id_foto, foto_galerias, quien, quien_galeria, titulo,nombre)  VALUES ('$id_foto','$id','$quien','$quien_galeria','$titulo','$nombre')"
por

Código PHP:
 $query_for "UPDATE obras_galeria SET id_foto='$id_foto', foto_galerias='$id', quien='$quien', quien_galeria='$quien_galeria', titulo='$titulo', nombre='$nombre'"
Lo único que añadiría sería un WHERE para actualizar una fila en concreto.

Un saludo.
  #5 (permalink)  
Antiguo 12/03/2007, 02:29
 
Fecha de Ingreso: mayo-2005
Mensajes: 31
Antigüedad: 18 años, 11 meses
Puntos: 0
Re: actualizar todos mis registros de una tabla con un do(){}

Efectivamente, estas usando la sintaxis de un INSERT para un UPDATE.
Debes hacer asi:

UPDATE [tabla] SET campo1='valor1', [campo2='valor2',] [campo3='valor3',] WHERE [campo_id]=valor ;

Si omites el WHERE, se actualizaran todos los registros de la tabla.

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 14:04.