Foros del Web » Programando para Internet » PHP »

como hacer casting float desde base de datos.

Estas en el tema de como hacer casting float desde base de datos. en el foro de PHP en Foros del Web. tengo un problema, y es que un campo de mi base de datos es de tipo float, pero al recogerlo en una consulta sql me ...
  #1 (permalink)  
Antiguo 03/06/2013, 04:56
 
Fecha de Ingreso: octubre-2011
Mensajes: 113
Antigüedad: 12 años, 5 meses
Puntos: 5
Pregunta como hacer casting float desde base de datos.

tengo un problema, y es que un campo de mi base de datos es de tipo float, pero al recogerlo en una consulta sql me queda asi:
Código:
array(3) {
      [0]=>
      array(1) {
        ["total"]=>
        string(3) "242"
      }
      [1]=>
      array(1) {
        ["total"]=>
        string(3) "242"
      }
      [2]=>
      array(1) {
        ["total"]=>
        string(3) "242"
      }
evidentemente, lo coge como string (cadena), y no puedo usar la función array_sum para sumarlos,,,,,,

alguna ideA?
  #2 (permalink)  
Antiguo 03/06/2013, 05:03
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: como hacer casting float desde base de datos.

Como obtienes ese resultado?
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 03/06/2013, 05:07
 
Fecha de Ingreso: octubre-2011
Mensajes: 113
Antigüedad: 12 años, 5 meses
Puntos: 5
Respuesta: como hacer casting float desde base de datos.

Cita:
Iniciado por quimfv Ver Mensaje
Como obtienes ese resultado?
si te refieres a la sentencia SQL,,,,

$result = $this->db->execute("SELECT ".$field." FROM fl_".$table."
WHERE id='".$id."'");

he probado de milformas,,,,

floatval,
cast,,,

pero no me suma con array_sum
  #4 (permalink)  
Antiguo 03/06/2013, 05:12
 
Fecha de Ingreso: octubre-2011
Mensajes: 113
Antigüedad: 12 años, 5 meses
Puntos: 5
Respuesta: como hacer casting float desde base de datos.

Cita:
Iniciado por inforob Ver Mensaje
si te refieres a la sentencia SQL,,,,

$result = $this->db->execute("SELECT ".$field." FROM fl_".$table."
WHERE id='".$id."'");

he probado de milformas,,,,

floatval,
cast,,,

pero no me suma con array_sum


ya lo consegui,,,,

metí los valores en un acumulador, e hice asi el casting:

$sum=0.00 para float
$sum=0 para int,,,

curioso
  #5 (permalink)  
Antiguo 03/06/2013, 05:12
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: como hacer casting float desde base de datos.

Y para imprimir lo que has posteado?

Estoy intentando ver dode se te transforman los datos la query es correcta ...
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #6 (permalink)  
Antiguo 03/06/2013, 05:13
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: como hacer casting float desde base de datos.

Si curioso e innecesario.... tienes algo mal que te complica la vida....

Como construyes $this->db?
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #7 (permalink)  
Antiguo 03/06/2013, 05:37
 
Fecha de Ingreso: octubre-2011
Mensajes: 113
Antigüedad: 12 años, 5 meses
Puntos: 5
Respuesta: como hacer casting float desde base de datos.

Cita:
Iniciado por quimfv Ver Mensaje
Si curioso e innecesario.... tienes algo mal que te complica la vida....

Como construyes $this->db?
jeejejejej

tengo una clase, que me permite ejecutar consultas, independientemente del motor de base de datos (postgree, mysql, oracle),,,,

simplemente guardo en un array los resultados obtenidos,
pero claro, los datos numéricos, float en mysql, me los saca php como string,,,
  #8 (permalink)  
Antiguo 03/06/2013, 05:44
Avatar de bookmaster  
Fecha de Ingreso: febrero-2002
Ubicación: Toledo
Mensajes: 976
Antigüedad: 22 años, 2 meses
Puntos: 67
Respuesta: como hacer casting float desde base de datos.

Hay veces que por mucha clase que se tenga, si no hace bien los procedimientos te puede dar dolor de cabeza, en vez de ponerte las cosas sencillas.
Estoy casi seguro que no usa gettype para comprobar que tipo de dato recibe, y por eso te los devuelve todos como string.
De todas maneras si esa consulta va a devolverte siempre números y no letras puedes forzarle a convertirlos, con settype.
__________________
Decir si te a funcionado la respuesta es ¡GRATIS!. Por favor indicarlo.
http://www.lohacemosweb.net
http://tutoriales.lohacemosweb.net

Última edición por bookmaster; 03/06/2013 a las 05:50
  #9 (permalink)  
Antiguo 03/06/2013, 05:52
 
Fecha de Ingreso: octubre-2011
Mensajes: 113
Antigüedad: 12 años, 5 meses
Puntos: 5
De acuerdo Respuesta: como hacer casting float desde base de datos.

Cita:
Iniciado por bookmaster Ver Mensaje
Hay veces que por mucha clase que se tenga, si no hace bien los procedimientos te puede dar dolor de cabeza, en vez de ponerte las cosas sencillas.
Estoy casi seguro que no usa gettype para comprobar que tipo de dato recibe, y por eso te los devuelve todos como string.
De todas maneras si esa consulta va a devolverte siempre números y no letras puedes forzarle a convertirlos, con settype.
seguro no ,,, segurisimo de que no lo utilizo,,,,

no tuve en cuenta, de que php no tiene por qué saber los tipos de mi base de datos mysql,,,,

lo tendré en cuenta muchas gracias

Etiquetas: float, 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 05:29.