Foros del Web » Programando para Internet » PHP »

Multiplicar usando BCMath

Estas en el tema de Multiplicar usando BCMath en el foro de PHP en Foros del Web. Hola Amigos !!! estoy intentando hacer una multiplicacion con la libreria BCMath el problema es que no hace nada al hacerlo de esta manera. @import ...
  #1 (permalink)  
Antiguo 17/06/2011, 07:18
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Multiplicar usando BCMath

Hola Amigos !!!
estoy intentando hacer una multiplicacion con la libreria BCMath
el problema es que no hace nada al hacerlo de esta manera.
Código PHP:
Ver original
  1. $tl=bcmul($compra_cantidad[$i] , $compra_precio[$i],2)
si le saco [$i] funciona bien
hay alguna forma de hacerlo?
saludos!!!
  #2 (permalink)  
Antiguo 17/06/2011, 07:26
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Multiplicar usando BCMath

¿Los valores estan como tipo string o o int o float? Tienen que estar tipo string.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 17/06/2011, 07:32
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Multiplicar usando BCMath

Hola como estas
Mira esos valores los estoy sacando de esta forma
Código PHP:
Ver original
  1. $compra_precio  =explode('|',$row['compra_precio']);
  2. $compra_cantidad=explode('|',$row['compra_cantidad']);
y despues hago un for
y esos datos, estan guardados como text en bd ,
Saludos
  #4 (permalink)  
Antiguo 17/06/2011, 07:46
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Multiplicar usando BCMath

estoy probando asi:
Código PHP:
Ver original
  1. $cc=$compra_cantidad[$i];$cp=$compra_precio[$i];
  2.       $tl=bcmul($cc,$cp,2) ;
pero tampoco funciona
  #5 (permalink)  
Antiguo 17/06/2011, 08:24
 
Fecha de Ingreso: febrero-2010
Mensajes: 295
Antigüedad: 14 años, 2 meses
Puntos: 58
Respuesta: Multiplicar usando BCMath

Hola tumbero_x

¿Has probado a imprimir las variables $compra_cantidad y $compra_precio con var_dump() a ver que salen?

En el primer mensaje dices que si le sacas [$i] funciona bien. ¿Que quieres decir con eso?.

¿Puedes poner como haces el for?
  #6 (permalink)  
Antiguo 17/06/2011, 08:27
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Multiplicar usando BCMath

Haz un var_dump a cada variable e indica que tienes escrito.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 17/06/2011, 08:39
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Multiplicar usando BCMath

imprimi el resultado y salio asi
9999999
9999999.99
9999999
9999999.99
y el for lo hago de eest manera
Código PHP:
Ver original
  1. for ($i=0;$i<sizeof($compra_arti_id);$i++)
  2. { }
  #8 (permalink)  
Antiguo 17/06/2011, 08:41
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Multiplicar usando BCMath

Y en el var_dump
salio asi
string(8) "9999999 " string(11) "9999999.99 "
  #9 (permalink)  
Antiguo 17/06/2011, 08:56
 
Fecha de Ingreso: febrero-2010
Mensajes: 295
Antigüedad: 14 años, 2 meses
Puntos: 58
Respuesta: Multiplicar usando BCMath

¿La variable $compra_arti_id es una de las que utilizas para multiplicar?.
Imprímela también, por si a caso, no vaya a estar vacía.
  #10 (permalink)  
Antiguo 17/06/2011, 09:18
 
Fecha de Ingreso: febrero-2010
Mensajes: 295
Antigüedad: 14 años, 2 meses
Puntos: 58
Respuesta: Multiplicar usando BCMath

Acabo de ver el error. Los números tienen un espacio en blanco al final. Fíjate, el número 9999999 tiene siete cifras y te da 8, y el otro tiene 10 y te sale 11.
Tienes que quitar ese espacio en blanco. Creo que con la función rtrim() lo puedes hacer.
  #11 (permalink)  
Antiguo 17/06/2011, 09:19
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Multiplicar usando BCMath

ahhhh buenisimo ya lo pruebo!!!!
  #12 (permalink)  
Antiguo 17/06/2011, 09:25
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: Multiplicar usando BCMath

Perfecto!!!!
Solucionado!!!!
de alguna forma tenia un caracter vacio al final de la variable
Saludos y Gracias a abimaelrc y Nexus10

Etiquetas: bcmath, multiplicar
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 08:20.