Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Sentencia mal escrita, y no se porque

Estas en el tema de Sentencia mal escrita, y no se porque en el foro de Bases de Datos General en Foros del Web. Hola amigos, la siguiente sentencia no se procesa y no me tira el error (tengo el reporte de errores activado) Es esta : @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); ...
  #1 (permalink)  
Antiguo 11/02/2010, 14:26
Avatar de tonchii  
Fecha de Ingreso: noviembre-2008
Mensajes: 159
Antigüedad: 15 años, 5 meses
Puntos: 2
Pregunta Sentencia mal escrita, y no se porque

Hola amigos, la siguiente sentencia no se procesa y no me tira el error (tengo el reporte de errores activado)

Es esta :
Código MySQL:
Ver original
  1. SELECT * FROM productos WHERE referencia LIKE '%$_POST[palabra]%' AND estado = 'activado' ORDER BY id

Y otra duda, puedo agregar tantos "AND" como quiera, es decir,

Código MySQL:
Ver original
  1. WHERE .. AND .. AND .. AND ..

Muchas Gracias
__________________
Por que solo seremos dueños de aquello que creemos y amemos
  #2 (permalink)  
Antiguo 11/02/2010, 14:37
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Sentencia mal escrita, y no se porque

Cita:
Hola amigos, la siguiente sentencia no se procesa y no me tira el error (tengo el reporte de errores activado)

Es esta :
Código MySQL:
Ver originalCopiar
SELECT * FROM productos WHERE referencia LIKE '%$_POST[palabra]%' AND estado = 'activado' ORDER BY id
Que error te genera? p'arece que el error está en el uso de la variable de php y no en la sentencia SQL. Pruebala con una palabra coincidente en la tabla directamente.

Cita:
Y otra duda, puedo agregar tantos "AND" como quiera, es decir,

Código MySQL:
Ver originalCopiar
WHERE .. AND .. AND .. AND ..

Muchas Gracias
Exacto. Puedes usar cuantos and requieras.

saludos tonchi
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 11/02/2010, 14:38
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Sentencia mal escrita, y no se porque

Deberia ir al subforo de php, por que contiene código.

Debes verificar si la variable $_POST[palabra] contiene algun dato o no devuelve lo que esperas.

Haz un
Código PHP:
echo $_POST[palabra]; 
Antes de la sentencia sql, a ver que te sale.
  #4 (permalink)  
Antiguo 11/02/2010, 16:06
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Sentencia mal escrita, y no se porque

tonchi,
es un problema PHP.
LIKE '%{$_POST[palabra]}%'

pide ayuda allí.
  #5 (permalink)  
Antiguo 11/02/2010, 16:06
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Sentencia mal escrita, y no se porque

perdón, lo repetí.
  #6 (permalink)  
Antiguo 11/02/2010, 16:12
Avatar de tonchii  
Fecha de Ingreso: noviembre-2008
Mensajes: 159
Antigüedad: 15 años, 5 meses
Puntos: 2
Respuesta: Sentencia mal escrita, y no se porque

La variable $_POST[palabra] si contiene informacion, pero como es un formulario de busuqeda lo que se procesa me devuelve que no existen registros, siendo que he confirmado que si existen.
No se que sucede :S
__________________
Por que solo seremos dueños de aquello que creemos y amemos
  #7 (permalink)  
Antiguo 11/02/2010, 16:21
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Sentencia mal escrita, y no se porque

Es php, tonchii,
mira las llaves que te puse para darte una pista...
pregunta en el foro PHP.
  #8 (permalink)  
Antiguo 11/02/2010, 16:23
Avatar de tonchii  
Fecha de Ingreso: noviembre-2008
Mensajes: 159
Antigüedad: 15 años, 5 meses
Puntos: 2
Respuesta: Sentencia mal escrita, y no se porque

Saben que probe cambiando el AND .. por otro condicional que es numerico, y si me arroja resultados. Asi que solo no se procesa cuando pido el estado.

Voy a seguir viendo y les comento luego
__________________
Por que solo seremos dueños de aquello que creemos y amemos
  #9 (permalink)  
Antiguo 11/02/2010, 16:26
Avatar de tonchii  
Fecha de Ingreso: noviembre-2008
Mensajes: 159
Antigüedad: 15 años, 5 meses
Puntos: 2
Respuesta: Sentencia mal escrita, y no se porque

Tendra algo que ver si es igual a '0' el condicional que busco????
__________________
Por que solo seremos dueños de aquello que creemos y amemos
  #10 (permalink)  
Antiguo 11/02/2010, 17:33
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Sentencia mal escrita, y no se porque

Cita:
Saben que probe cambiando el AND .. por otro condicional que es numerico, y si me arroja resultados. Asi que solo no se procesa cuando pido el estado.
¿Estás seguro que el contenido del campo en la tabla es realmente "activado"? ¿No será otra cosa lo que tiene?

Si todo funciona bien hasta que incluyes eso, significa simplemente que no se cumplen las dos condiciones al mismo tiempo; es decir: no contiene el texto buscado y al mismo tiempo estado es "activado".

Claro que para estar seguro deberíamos saber qué es lo que le mandas dentro de la variable. O sea, un ejemplo de lo que le pones...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: mal, sentencia
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 20:55.