Foros del Web » Programando para Internet » PHP »

problema con UPDATE

Estas en el tema de problema con UPDATE en el foro de PHP en Foros del Web. tengo este update para actualizar un campo de una tabla @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original $consulta = "UPDATE habitaciones SET $tipo where $tipo =" ...
  #1 (permalink)  
Antiguo 12/03/2013, 13:07
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
problema con UPDATE

tengo este update para actualizar un campo de una tabla

Código PHP:
Ver original
  1. $consulta="UPDATE habitaciones SET $tipo where $tipo=".$_POST['cantidad_select'];
  2. $result_conexion=Conectar($consulta);

y me devuelve este error. no consigo encontrar el supuesto error de sintaxis.

Código HTML:
Ver original
  1. ERROR:
  2. 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 'where triple=10' at line 1

¿alguien me puede ayudar? gracias!
  #2 (permalink)  
Antiguo 12/03/2013, 13:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problema con UPDATE

¿La variable $tipo contiene el nombre de la columna o por qué la colocas así?

La sintaxis correcta sería:
Cita:
UPDATE tabla SET campo = 'valor' WHERE [condiciones]
Pero bueno, eso se sale del foro, ya que es tema exclusivamenten de SQL.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 12/03/2013, 13:24
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: problema con UPDATE

podes hacer
Código PHP:
Ver original
  1. <?
  2. echo $consulta;
  3. ?>

para ver la query
  #4 (permalink)  
Antiguo 12/03/2013, 13:26
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: problema con UPDATE

mil gracias por responder.

la variable tipo contiene una palabra que puede ser simple, doble, triple o cuadruple.

no entiendo por qué me da error si la palabra la estoy pasando por variable
  #5 (permalink)  
Antiguo 12/03/2013, 13:29
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: problema con UPDATE

esta claro lo que te explico peteke,

vos que campo queres actualizar?
y por favor mostranos que devuelve la consulta para que veas vos mismo lo que te falta
  #6 (permalink)  
Antiguo 12/03/2013, 13:30
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: problema con UPDATE

$consulta me devuelve esto

UPDATE habitaciones SET cuadruple where cuadruple=10

según eso la sintaxis está bien hecha no?

yo quiero cambiar precisamente un campo que he escogido por <select> de un formulario y es exactamente ese que me devuelve $consulta

si es necesario pego todo el código, no hay problema :P

sinceramente muchas gracias por su ayuda
  #7 (permalink)  
Antiguo 12/03/2013, 13:32
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problema con UPDATE

Si estuviera bien hecha no te daría error de sintaxis, ¿no?

Te hace falta especificar un valor para dicha columna al usar SET, por favor revisa el ejemplo que te dí.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 12/03/2013, 13:33
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: problema con UPDATE

NO ESTA BIEN HECHA!!! por eso te da un error y te lo acaba de explicar peteke

UPDATE habitaciones SET cuadruple = "TE FALTA EL VALOR NUEVO" where cuadruple=10
  #9 (permalink)  
Antiguo 12/03/2013, 13:44
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: problema con UPDATE

si lo lee algún moderador ¿podría cambiarlo a mysql? gracias :D

continuando con la duda. no entiendo la sintaxis :S

según me decís los dos UPDATE tabla SET campo="nuevo valor" WHERE campo_otra_vez="nuevo_valor_otra_vez"??? :S no entiendo nada

por favor si me lo podeis explicar, porque estoy consultando a la vez la faq y dice lo mismo que decís vosotros, pero no tengo claro dónde debería pasar los valores y cuales para actualizar la tabla :S

gracias!! :)
  #10 (permalink)  
Antiguo 12/03/2013, 13:50
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: problema con UPDATE

si no entendes eso hace un curso hermano, es rebasico y ya te dimos la respuesta
  #11 (permalink)  
Antiguo 12/03/2013, 14:10
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problema con UPDATE

Son cosas distintas SET y WHERE, SET te sirve para especificar los nuevos valores (los cambios) y WHERE para limitar la consulta únicamente el registro que cumpla las condiciones (no los nuevos valores).

Tan básico, si, lo es, que podrías leer un manual al respecto.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #12 (permalink)  
Antiguo 12/03/2013, 14:24
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: problema con UPDATE

muchas gracias pateketrueke, así me quedó muchísimo más claro. ahí van mis positivos para ustedes :D :P

Etiquetas: mysql, select, sql, tabla, 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 07:58.