Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] error en consulta

Estas en el tema de error en consulta en el foro de PHP en Foros del Web. que tal, como estan? estoy tratando de realizar una consulta con el operador aritmetico division, si la ejecuto desde mi consola de postgres funciona bien, ...
  #1 (permalink)  
Antiguo 10/07/2013, 12:49
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
error en consulta

que tal, como estan? estoy tratando de realizar una consulta con el operador aritmetico division, si la ejecuto desde mi consola de postgres funciona bien, pero cuando se ejecuta desde el codigo arroja error, la consulta es la siguiente

Código PHP:
$sqlSeguimiento .= "SELECT DISTINCT b.proy_id, b.objet_id, b.proyecto_d, ";
$sqlSeguimiento .= "b.cantidad_enero, b.cantidad_feb, b.cantidad_marz, ";
$sqlSeguimiento .= "b.cantidad_abr, b.cantidad_may, b.cantidad_jun, ";
$sqlSeguimiento .= "b.cantidad2_enero,b.cantidad2_febr, b.cantidad2_marz"
$sqlSeguimiento .= "(b.cantidad2_marzo/b.cantidad_marzo) * 100 as porcentaje_marzo, ";
$sqlSeguimiento .= "(b.cantidad2_junio/b.cantidad_junio) * 100 as porcentaje_junio ";
$sqlSeguimiento .= "FROM seguimiento_costos b ";
$sqlSeguimiento .= "WHERE b.year='2013 AND clave='CC123' AND c_seg='102' "
el error que muestra:

Código PHP:
<b>Fatal error</b>:  Call to a member function num_rows() on a non-object in <b>C:/AppServ/www/...../.../bon line <b>855</b><br /> 
el error lo genera al ejecutar la consulta, si le quito el campo donde hace la division lo ejecuta sin problema...
  #2 (permalink)  
Antiguo 10/07/2013, 12:59
Avatar de AnGuisi  
Fecha de Ingreso: julio-2013
Ubicación: San Felipe - Yaracuy
Mensajes: 122
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: error en consulta

Son varias consultas, usas mysqli_multi_query?
Aparte a tu codigo le falta una sentencia para mostrar los resultados, tal como mysqli_fetch_array.

En realidad no puedo ser mas especifico porque no soy experto en el tema. Pero el codigo esta incompleto.
  #3 (permalink)  
Antiguo 10/07/2013, 13:04
Avatar de alexmetola  
Fecha de Ingreso: julio-2013
Ubicación: madrid
Mensajes: 33
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: error en consulta

bufff haber despues de b.cantidad2_marz no le falta una coma,se llama asi?por que despues pone b.cantidad2_marzo ,son el mismo campo?
  #4 (permalink)  
Antiguo 10/07/2013, 13:07
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: error en consulta

Si son dos cantidades diferentes, cantidad2 y cantidad, mmmmm no tengo error de COMA, mas bien creo que es por el operador de division
  #5 (permalink)  
Antiguo 10/07/2013, 13:33
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: error en consulta

Yo veo que acá te hace falta una coma:
Código PHP:
Ver original
  1. $sqlSeguimiento .= "b.cantidad2_enero,b.cantidad2_febr, b.cantidad2_marz"

Si estas usando postgresql puedes usar pg_last_error() para obtener el error al ejecutar el query con pg_query.

Saludos.
  #6 (permalink)  
Antiguo 10/07/2013, 14:15
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 2 meses
Puntos: 53
Respuesta: error en consulta

aqui falta una comilla simple
Cita:
$sqlSeguimiento .= "WHERE b.year='2013'AND clave='CC123' AND c_seg='102' ";
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #7 (permalink)  
Antiguo 10/07/2013, 15:10
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: error en consulta

tengo la teoria de que es porque en alguna parte de mi consulta se ejecuta algun cero, entonces division con cero genera error, voy a probar y les indico

Última edición por Bernoo; 10/07/2013 a las 15:26
  #8 (permalink)  
Antiguo 10/07/2013, 15:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: error en consulta

Usa mejor pg_last_error() para ver que error te marca desde PHP la consulta
  #9 (permalink)  
Antiguo 10/07/2013, 16:40
 
Fecha de Ingreso: noviembre-2008
Mensajes: 100
Antigüedad: 15 años, 5 meses
Puntos: 4
Respuesta: error en consulta

habia usado el pg_last_error() y marcaba errror en la consulta, y en efecto habia un campo en 0 y por eso generaba el error, hice una funcion desde mi base de datos para cuando cache algun campo en 0 y asi no genere el error division by zero, saludos y gracias por sus comentarios..

Etiquetas: select, sql
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 01:49.