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

Obtengo resultados cuando no debería

Estas en el tema de Obtengo resultados cuando no debería en el foro de Mysql en Foros del Web. Amigos, les explico, estoy haciendo un sistema en PHP y Myslq, que en cada cliente genera ordenes de compra. El cliente puede ver el detalle ...
  #1 (permalink)  
Antiguo 10/04/2010, 07:13
 
Fecha de Ingreso: abril-2005
Mensajes: 38
Antigüedad: 18 años, 11 meses
Puntos: 0
Obtengo resultados cuando no debería

Amigos, les explico, estoy haciendo un sistema en PHP y Myslq, que en cada cliente genera ordenes de compra. El cliente puede ver el detalle de su orden "logeandose" al sistema.

A modo de seguridad tengo una función la cual tiene la misión de verificar si la orden pertenece o no al cliente. Para ello, estoy guardando el Id del CLIENTE en la tabla ORDEN.

Lo que se me ocurrió es hacer un select, donde pongo la condición que filtre la orden con Id y luego, con el Id del cliente.

Para mí, esto lógicamente está OK, si al select filtro por una orden X, y luego por un cliente Y, el cual no está asociada con la orden, entiendo que no debería traer resultado alguno (obtener un falso), y en este caso la orden no pertenecería al cliente.

El problema, es que no me funciona, ya que aun que ponga estas condiciones de igual forma estoy obteniendo resultados, aun cuando el cliente no esta asociado en la orden.

Mi pregunta es: ¿de que forma podría verificar si una orden X, pertenece o no a un cliente Y?

Este es el código de la consulta que estoy utilizando:

SELECT * FROM orden WHERE orden_id = '$order_id' AND cliente_id = '$cli_id'

El punto es que si yo le paso una orden que NO pertenece al cliente, me trae resultados y por lo tanto no me funciona lo que quiero hacer.

Les agradesco toda la ayuda que me puedan brindar!
  #2 (permalink)  
Antiguo 11/04/2010, 21:32
 
Fecha de Ingreso: abril-2005
Mensajes: 38
Antigüedad: 18 años, 11 meses
Puntos: 0
Respuesta: Obtengo resultados cuando no debería

Ayuda plz!!
  #3 (permalink)  
Antiguo 12/04/2010, 15:01
 
Fecha de Ingreso: septiembre-2008
Mensajes: 20
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Obtengo resultados cuando no debería

el detalle es que si $order_id' y '$cli_id' son valores que existen en tu base de datos, te va arrojar elementos, aqui lo que podrias checar es que el valor de la columna orden_id sea la misma para todas las filas por que si lo es asi para cualquier id de cliente se va cumplir la condición, es lo que se me ocurre, hay mas posibilidades

como conclusion primera checa el contenido de tu BD y ve depurando con echo para ver que contiene cada variable, y ayudate para ver las los resultados de las query con phpmyadmin o Mysql Query Browser.

saludos

Etiquetas: cuando, resultados
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 19:31.