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

problemas con decimales en la BD

Estas en el tema de problemas con decimales en la BD en el foro de Mysql en Foros del Web. tengo un pekeño problemilla !!!! tengo un formulario en el cual envio un par de datos en decimales(estoy obligado a usar comas) que es algo ...
  #1 (permalink)  
Antiguo 26/05/2011, 10:43
 
Fecha de Ingreso: mayo-2011
Mensajes: 15
Antigüedad: 13 años, 6 meses
Puntos: 1
problemas con decimales en la BD

tengo un pekeño problemilla !!!!

tengo un formulario en el cual envio un par de datos en decimales(estoy obligado a usar comas) que es algo asi:

Código PHP:
Ver original
  1. <select name="backup" class="caja1">
  2.      <option value="0">Seleccione</option>
  3.       <option value="1,2">50 GB</option>
  4.        <option value="2,4">100 GB</option>
  5.         <option value="4,8">200 GB</option>
  6.          <option value="9,6">400 GB</option>
  7.    </select>
  8.  
  9.  <select name="web" class="caja1">
  10. <option value="0">Seleccione</option>
  11. <option value="0,41">1</option>
  12.    </select>


al insertarlo a la base de datos me guarda 0.000

pero si rescato el valor me lo muestra bien... no se que estoy haciendo mal

los campos en mi BD son FLOAT(4,3)
intente con DECIMAL pero es lo mismo

y esta es la consulta:

Código MySQL:
Ver original
  1. $sql="INSERT INTO ".$prefix."usuario (idusuario, web,  backup)
  2. VALUES ('',  '$web',  '$backup')";

ayudenme porfavor

gracias
  #2 (permalink)  
Antiguo 26/05/2011, 10:52
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: problemas con decimales en la BD

Cámbiale las comas por puntos antes de enviar los valores a la base. De ese modo la base los entenderá bien.
SI vas a requerir cierta precisión, como en el caso de valores monetarios, usa DECIMAL y no FLOAT. El FLOAT es un número por aproximación. MySQL recomienda el DECIMAL para valores monetarios.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 26/05/2011, 11:06
 
Fecha de Ingreso: mayo-2011
Mensajes: 15
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: problemas con decimales en la BD

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Cámbiale las comas por puntos antes de enviar los valores a la base. De ese modo la base los entenderá bien.
SI vas a requerir cierta precisión, como en el caso de valores monetarios, usa DECIMAL y no FLOAT. El FLOAT es un número por aproximación. MySQL recomienda el DECIMAL para valores monetarios.
ok, yo ya habia probado con punto y no con coma... pero ese es mi problema, luego de hacer el INSERT necesito devolver lso valores en una pantalla para el usuario y estrictamente mostrarlo con coma..
EJ:

guardo 0.23 y luego muestro en pantalla 0,23

como hago eso???
  #4 (permalink)  
Antiguo 26/05/2011, 11:16
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: problemas con decimales en la BD

Con PHP o cualquier lenguaje de programación que quieras usar.
En el caso de PHP, para eso está la función number_format().
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 26/05/2011, 11:46
 
Fecha de Ingreso: mayo-2011
Mensajes: 15
Antigüedad: 13 años, 6 meses
Puntos: 1
Respuesta: problemas con decimales en la BD

gracias!!!!

ocupe esta funcion

$nombre_format_francais = number_format($variable, 3, ',','');

funciona a la perfeccion
  #6 (permalink)  
Antiguo 26/05/2011, 12:21
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: problemas con decimales en la BD

Me alegra que resultara.

__________________
¿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: decimal, float, php
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 13:44.