Foros del Web » Programando para Internet » PHP »

Update con php

Estas en el tema de Update con php en el foro de PHP en Foros del Web. Hola buenas a todos, tengo un problemilla con un código que ando montando y no tengo manera de que funcione siempre me tira este error: ...
  #1 (permalink)  
Antiguo 15/02/2012, 03:10
 
Fecha de Ingreso: enero-2007
Ubicación: Delante de un Pc
Mensajes: 26
Antigüedad: 17 años, 10 meses
Puntos: 0
Pregunta Update con php

Hola buenas a todos, tengo un problemilla con un código que ando montando y no tengo manera de que funcione siempre me tira este error:
Cita:
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 'Web, descripcionweb=Descripcion Web, keywords=Keywords, alexaverifyid=Alexa ID,' at line 1
aqui os pongo los datos que tengo

Código SQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS `maca_configuracion` (
  2.   `idconfiguracion` INT(1) NOT NULL,
  3.   `tituloweb` VARCHAR(255) CHARACTER SET utf8 DEFAULT NULL,
  4.   `descripcionweb` VARCHAR(255) CHARACTER SET utf8 DEFAULT NULL,
  5.   `keywords` VARCHAR(255) CHARACTER SET utf8 DEFAULT NULL,
  6.   `alexaverifyid` VARCHAR(50) CHARACTER SET utf8 DEFAULT NULL,
  7.   `msvalidate` VARCHAR(50) CHARACTER SET utf8 DEFAULT NULL,
  8.   `google` VARCHAR(50) CHARACTER SET utf8 DEFAULT NULL,
  9.   `adminemail` VARCHAR(100) CHARACTER SET utf8 DEFAULT NULL,
  10.   `personalemail` VARCHAR(100) CHARACTER SET utf8 DEFAULT NULL,
  11.   `titulomensajes` VARCHAR(255) CHARACTER SET utf8 DEFAULT NULL,
  12.   `semanal` VARCHAR(50) CHARACTER SET utf8 DEFAULT NULL,
  13.   `horario` VARCHAR(50) CHARACTER SET utf8 DEFAULT NULL,
  14.   `telefono` VARCHAR(20) CHARACTER SET utf8 DEFAULT NULL,
  15.   `tiempo` INT(1) DEFAULT NULL
  16. );


Código PHP:
Ver original
  1. exit("UPDATE maca_configuracion SET tituloweb=$tituloweb, descripcionweb=$descripcionweb, keywords=$keywords,
  2. alexaverifyid=$alexaverifyid,
  3. msvalidate=$msvalidate ,google=$google, adminemail=$adminemail, personalemail=$personalemail, titulomensajes=$titulomensajes,
  4. semanal=$semanal,
  5. horario=$horario, telefono=$telefono, tiempo=$tiempo WHERE idconfiguracion='$idconfiguracion'");

y aparece se muestra esto
Código SQL:
Ver original
  1. UPDATE maca_configuracion SET
  2.     tituloweb=Nombre Web,
  3.     descripcionweb=Descripcion Web,
  4.     keywords=Keywords,
  5.     alexaverifyid=Alexa ID,
  6.     msvalidate=Microsoft Id,
  7.     google=Google ID,
  8.     adminemail=Admin Email,
  9.     personalemail=Personale Email,
  10.     titulomensajes=Titulos Asunto,
  11.     semanal=Trabajo de,
  12.     horario=Horario de,
  13.     telefono=Teléfono,
  14.     tiempo=0
  15. WHERE idconfiguracion='0'

Pero en cuanto pongo esto
Código PHP:
Ver original
  1. $result =mysql_query("UPDATE maca_configuracion SET tituloweb=$tituloweb, descripcionweb=$descripcionweb, keywords=$keywords,
  2. alexaverifyid=$alexaverifyid,
  3. msvalidate=$msvalidate ,google=$google, adminemail=$adminemail, personalemail=$personalemail, titulomensajes=$titulomensajes,
  4. semanal=$semanal,
  5. horario=$horario, telefono=$telefono, tiempo=$tiempo WHERE idconfiguracion='$idconfiguracion'") or die(mysql_error());

me tira el error.
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 'Web, descripcionweb=Descripcion Web, keywords=Keywords, alexaverifyid=Alexa ID,' at line 1

Un saludo y gracias
  #2 (permalink)  
Antiguo 15/02/2012, 04:44
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 14 años, 2 meses
Puntos: 331
Respuesta: Update con php

Las cadenas de texto en MySQL deben ir entre ' o ".
Saludos
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 15/02/2012, 05:35
 
Fecha de Ingreso: diciembre-2010
Ubicación: Gavà
Mensajes: 74
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: Update con php

Debería de quedar el php:
Código PHP:
exit("
UPDATE maca_configuracion
SET tituloweb='$tituloweb',
      descripcionweb='$descripcionweb',
      keywords='$keywords', 
      alexaverifyid='$alexaverifyid', 
      msvalidate='$msvalidate',
      google='$google',
      adminemail='$adminemail',
      personalemail='$personalemail',
      titulomensajes='$titulomensajes', 
      semanal='$semanal', 
      horario='$horario',
      telefono='$telefono',
      tiempo=$tiempo //No hace falta comillas porque es INT
WHERE idconfiguracion=$idconfiguracion //No hace falta comillas porque es INT
"
); 
Espero que te sirva! ^^
  #4 (permalink)  
Antiguo 15/02/2012, 06:19
 
Fecha de Ingreso: enero-2007
Ubicación: Delante de un Pc
Mensajes: 26
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Update con php

Funciona bien aunque solo me ACTUALIZA la opcion de TIEMPO

Código PHP:
Ver original
  1. $result ="UPDATE maca_configuracion
  2. SET tituloweb='$tituloweb',
  3.      descripcionweb='$descripcionweb',
  4.      keywords='$keywords',  
  5.      alexaverifyid='$alexaverifyid',  
  6.      msvalidate='$msvalidate',
  7.      google='$google',
  8.      adminemail='$adminemail',
  9.      personalemail='$personalemail',
  10.      titulomensajes='$titulomensajes',  
  11.      semanal='$semanal',  
  12.      horario='$horario',
  13.      telefono='$telefono',
  14.      tiempo=$tiempo
  15. WHERE idconfiguracion=$idconfiguracion";
  16.         $result = mysql_query($result);

aunque todos los datos los recoge bien. alguna idea?? estoy ya loca con esto

gracias


-------------------------------------------------------------------------------------

retiro lo dicho todo perfecto muchas gracias!!!

Última edición por Xanders; 15/02/2012 a las 06:36
  #5 (permalink)  
Antiguo 15/02/2012, 06:44
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 13 años, 5 meses
Puntos: 56
Respuesta: Update con php

Ya te diste cuenta no? quitale las comillas a los demas datos para que te actualize.

Código PHP:
Ver original
  1. $result ="UPDATE maca_configuracion
  2. SET tituloweb=$tituloweb,
  3.      descripcionweb=$descripcionweb,
  4.      keywords=$keywords,  
  5.      alexaverifyid=$alexaverifyid,  
  6.      msvalidate=$msvalidate,
  7.      google=$google,
  8.      adminemail=$adminemail,
  9.      personalemail=$personalemail,
  10.      titulomensajes=$titulomensajes,  
  11.      semanal=$semanal,  
  12.      horario=$horario,
  13.      telefono=$telefono,
  14.      tiempo=$tiempo
  15. WHERE idconfiguracion=$idconfiguracion";
  16.         $result = mysql_query($result);
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.

Última edición por CesarHC; 15/02/2012 a las 07:50
  #6 (permalink)  
Antiguo 15/02/2012, 18:01
 
Fecha de Ingreso: diciembre-2010
Ubicación: Gavà
Mensajes: 74
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: Update con php

Código PHP:
Ver original
  1. UPDATE maca_configuracion
  2. SET tituloweb=\"$tituloweb\",
  3.      descripcionweb=\"$descripcionweb\",
  4.      keywords=\"$keywords\",  
  5.      alexaverifyid=\"$alexaverifyid\",  
  6.      msvalidate=\"$msvalidate\",
  7.      google=\"$google\",
  8.      adminemail=\"$adminemail\",
  9.      personalemail=\"$personalemail\",
  10.      titulomensajes=\"$titulomensajes\",  
  11.      semanal=\"$semanal\",  
  12.      horario=\"$horario\",
  13.      telefono=\"$telefono\",
  14.      tiempo=$tiempo
  15. WHERE idconfiguracion=$idconfiguracion

Prueba eso xD
  #7 (permalink)  
Antiguo 16/02/2012, 00:03
 
Fecha de Ingreso: diciembre-2011
Ubicación: Chile
Mensajes: 36
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: Update con php

Código PHP:
Ver original
  1. $sql="UPDATE maca_configuracion
  2. SET tituloweb='".$tituloweb."',
  3.      descripcionweb='".$descripcionweb."',
  4.      etc....";


o asi, si abriste la variable con comillas dobles, debes anidar usando ' " . variable . " ',

Etiquetas: sql, syntax, update
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:10.