PHP - number_format con consultas de agrupación de mysql

 
Vista:

number_format con consultas de agrupación de mysql

Publicado por Jaime (5 intervenciones) el 21/01/2020 02:58:50
Hola,

Espero me puedan ayudar, con lo siguiente.

Estoy realizando una consulta a mi BD de mysql "SELECT MAX(V.importe) importe ,SUM(cComprobado) comprobado, SUM(cPropina)" y el resultado lo sumo con otros importes desde un formulario, el detalle surge cuando trato de formatear con number_format los resultados de la consulta por ejemplo,

$sumComprobacion=number_format($comprobado,2);
Lanza una notificación Notice: A non well formed numeric value encountered in C:\xampp\htdocs.....

Ahora, si primero sumo variables del formulario y variables de la consulta no lanza ese error, por ejemplo
1
2
3
4
5
$sumComprobacion=$comprobado;
$sumComprobacion+=$propina;
$sumComprobacion+=$cComprobadVIA;
$sumComprobacion+=$cPropinaVIA;
$sumComprobacion=number_format($sumComprobacion,2);

Un detalle adiciona es que el campo SUM(cComprobado) comprobado trae un valor de 4765.5200653076 en PHP y al consultar directo desde mysql trae 4765.52 que es el correcto ya que los campos de la bd solo aceptan 2 decimales
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kathyu
Val: 1.802
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

number_format con consultas de agrupación de mysql

Publicado por Kathyu (905 intervenciones) el 21/01/2020 21:19:23
Variable sobre variable?

Haga algo como
1
2
3
4
5
6
$sumComprobacion=$comprobado;
$sumComprobacion+=$propina;
$sumComprobacion+=$cComprobadVIA;
$sumComprobacion+=$cPropinaVIA;
 
$sumComprobacionFormat = number_format($sumComprobacion,2);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

number_format con consultas de agrupación de mysql

Publicado por joel (1269 intervenciones) el 22/01/2020 08:56:51
Hola Jaime, el problema puede ser que el valor que viene de la base de datos sea un valor de cadena?
Una vez haces operaciones, php lo convierte a valor numerico.

Prueba a así:
1
$sumComprobacion=number_format(floatval($comprobado),2);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar