Foros del Web » Programando para Internet » PHP »

resolver (A+300)*2

Estas en el tema de resolver (A+300)*2 en el foro de PHP en Foros del Web. Hola En una base de datos hay alamecenadas diferentes formulas para el calculo de cantidades o dimensiones que se usaran dependiendo del alto y ancho ...
  #1 (permalink)  
Antiguo 17/08/2005, 10:10
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 12 años, 2 meses
Puntos: 0
Busqueda resolver (A+300)*2

Hola
En una base de datos hay alamecenadas diferentes formulas para el calculo de cantidades o dimensiones que se usaran dependiendo del alto y ancho de una ventana. Algo asi como esto:

((A*2)+(b*2))/12000

A Y B son el alto y ancho de una ventana, y especificamente esta formula es para resolver la cantidad de silicona.

Mi duda es como resolver esto de manera sencilla, es decir reemplazar A y B con el valor que se ingrese y listo. Se me ocurre solo usar "explode" e ir de caracter en caracter resolviendolo, enredandose bastante el problema.

Atte
Mauricio Gonzalez
  #2 (permalink)  
Antiguo 17/08/2005, 10:20
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 11 años, 8 meses
Puntos: 17
Si las formulas están en la base de datos y las controlás vos, creo que podés usar eval ... En $valor quedaría el resultado.
Código PHP:
<?php
$formula
"((A*2)+(b*2))/12000;";

$formula str_replace("A",$ancho,$formula);
$formula str_replace("b",$alto,$formula);

eval(
"$valor = ".$formula);
?>
  #3 (permalink)  
Antiguo 17/08/2005, 10:30
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 12 años, 2 meses
Puntos: 0
resolver formulas

Muuuuchas gracias!!
Atte
Mauricio Gonzalez
  #4 (permalink)  
Antiguo 18/08/2005, 14:31
 
Fecha de Ingreso: octubre-2004
Ubicación: Santiago de Chile
Mensajes: 504
Antigüedad: 12 años, 2 meses
Puntos: 0
De acuerdo

me funciona super bien, pero tengo una duda.
hay veces en que en el registro no hay una formula, sino una "A" o una "B", entonces el eval me manda error

Parse error: parse error in /srv/www/htdocs/Webfolders/devtec.cl/expo/menu/vent_presup/agregar.php(144) : eval()'d code on line 1

mi codigo es este:

if (eregi('A',$form_cant) || eregi('B',$form_cant)){
$form_cant=str_replace('A',$alto,$form_cant);
$form_cant=str_replace('B',$ancho,$form_cant);
$valor_fcant=eval('$form_cant');
}else{
$valor_fcant=$form_cant;
}
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:40.