Foros del Web » Programando para Internet » PHP »

problema al comparar numeros...

Estas en el tema de problema al comparar numeros... en el foro de PHP en Foros del Web. en algun sitio estoy metiendo la pata pero ya no se donde puede ser... porque me sale esto? el problema es que me dice en ...
  #1 (permalink)  
Antiguo 19/02/2008, 08:49
 
Fecha de Ingreso: febrero-2007
Mensajes: 134
Antigüedad: 17 años, 8 meses
Puntos: 2
problema al comparar numeros...

en algun sitio estoy metiendo la pata pero ya no se donde puede ser...

porque me sale esto?
el problema es que me dice en este caso que el campo producto['pvd'] que pone 91.872 que es distinto de precio2 que tambien pone 91.872
producto[pvp]=float numero scalar (7)->precio1=float numero scalar (7)
producto[pvd]=float numero scalar (6) ->precio2=float numero scalar (6)
producto[pvd2]=float numero scalar (7)->precio3=float numero scalar (7)

93.5424->93.5424|91.872->91.872|90.2016->90.2016

if ($precio1 != producto['pvp']) echo 'PVP distinto'
if ($precio2 != producto['pvd']) echo 'PVD distinto'
if ($precio3 != producto['pvd2']) echo 'PVD2 distinto'


pues me pone que el PVD es distinto... a pesar de que los numeros como veis son iguales...

que hago mal?
  #2 (permalink)  
Antiguo 20/02/2008, 07:11
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: problema al comparar numeros...

if ($precio1 != producto['pvp'])

Cuidado, eso genera un error de sintaxis, falta el $ delante de producto.
Por favor, pegá el código que estás usando, y usá var_dump($variable) para ver toda la información de una variable.


Saludos.
  #3 (permalink)  
Antiguo 20/02/2008, 08:04
 
Fecha de Ingreso: febrero-2007
Mensajes: 134
Antigüedad: 17 años, 8 meses
Puntos: 2
Re: problema al comparar numeros...

se me fue el dolar al escribirlo aqui....


el var_dump pone exactamente lo mismo... ya no se que hacer a a parte de cortarme las venas...
  #4 (permalink)  
Antiguo 20/02/2008, 08:21
 
Fecha de Ingreso: febrero-2007
Mensajes: 134
Antigüedad: 17 años, 8 meses
Puntos: 2
Re: problema al comparar numeros...

Este es el codigo:
echo 'Producto '.$elementos[2].' YA EXISTE.<br>';
$producto = get_elproducto($elementos[2]);
$producto['descripcion'] = addslashes(ltrim(rtrim($producto['descripcion'])));
$producto['pvp'] = ltrim(rtrim(convertir_a_numero($producto['pvp'])))+0;
$producto['pvd'] = ltrim(rtrim(convertir_a_numero($producto['pvd'])))+0;
$producto['pvd2'] = ltrim(rtrim(convertir_a_numero($producto['pvd2'])))+0;
echo "producto[pvp]="; echo var_dump($producto['pvp']);
echo "precio1="; echo var_dump($precio1).'<br>';
echo " producto[pvd]="; echo var_dump($producto['pvd']);
echo " precio2="; echo var_dump($precio2).'<br>';
echo " producto[pvd2]="; echo var_dump($producto['pvd2']);
echo " precio3="; echo var_dump($precio3).'<br>';
//if ($producto['descripcion'] = $elementos[3]) echo 'Descripcion igual'; else echo 'Descripcion NO igual'; echo '<br>';
echo "Descripción:";
if ($producto['descripcion'] == $elementos[3]) echo 'IGUAL'; else echo "DISTINTA";echo '<br>';
echo "PVP:";
if ($producto['pvp'] == $precio1) echo 'IGUAL'; else echo "DISTINTA";echo '<br>';
echo "PVD:";
if ($producto['pvd'] == $precio2) echo 'IGUAL'; else echo "DISTINTA";echo '<br>';
echo "PVD2:";
if ($producto['pvd2'] == $precio3) echo 'IGUAL'; else echo "DISTINTA";echo '<br>';


este es el resultado...:
Producto SVTSGJMS YA EXISTE.
producto[pvp]=float(16.8896) precio1=float(16.8896)
producto[pvd]=float(16.588) precio2=float(16.588)
producto[pvd2]=float(16.2864) precio3=float(16.2864)
Descripción:IGUAL
PVP:IGUAL
PVD:IGUAL
PVD2:IGUAL
Producto igual

Producto SVTWM6406 YA EXISTE.
producto[pvp]=float(93.5424) precio1=float(93.5424)
producto[pvd]=float(91.872) precio2=float(91.872)
producto[pvd2]=float(90.2016) precio3=float(90.2016)
Descripción:IGUAL
PVP:IGUAL
PVD:DISTINTA
PVD2:IGUAL
  #5 (permalink)  
Antiguo 20/02/2008, 09:32
 
Fecha de Ingreso: febrero-2007
Mensajes: 134
Antigüedad: 17 años, 8 meses
Puntos: 2
Re: problema al comparar numeros...

ya lo he cazado, el echo se calza espacios...
hay que hacer un round antes para poder igualarlos todos a 4 decimales y entonces sale bien...
...
  #6 (permalink)  
Antiguo 20/02/2008, 11:48
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: problema al comparar numeros...

Qué bueno que hayas encontrado el problema, solo un comentario más: en vez de usar

ltrim(rtrim())

usá

trim()


Saludos.
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 21:45.