leooizepi 1 Denunciar post Postado Janeiro 29, 2009 galera.. é o seguinte... eu tenho no meu banco assim, num1, num2 e op. num1 // é numero num2 // é numero tb op // é operador ai eu quero fazer essa equação.. mais ta dando certo.. como q eu faço? to fazendo assim: <? $op = " > "; $num1 = 1; $num2 = 1; if($num1.$op.$num2) echo "maior"; else echo "igual"; ?> e o resultado ta dando como "maior", tinha que ser "igual"! valeu.. abraço!!! Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Janeiro 29, 2009 http://br.php.net/eval Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Janeiro 29, 2009 os operadores de comparação são "construtores de linguagem" por isso, do modo como montou a expressão sempre retornará TRUE Compartilhar este post Link para o post Compartilhar em outros sites
leooizepi 1 Denunciar post Postado Janeiro 30, 2009 mais nao consegui montar esse eval()... fiz assim: <? $op = " > "; $num1 = 1; $num2 = 1; if($num1.eval($op).$num2) echo "maior"; else echo "igual"; ?> da o seguinte erro: Parse error: syntax error, unexpected '>' in /dados/www/htdocs/portalteste/Alexandre/indicadores_ctbc/teste.php(6) : eval()'d code on line 1 e ae galera!!! valeu!! Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Janeiro 30, 2009 $op = ">"; $num1 = 2; $num2 = 1; eval("\$resultado = $num1 $op $num2;"); if ($resultado == true) { echo "TRUE"; } else { echo "FALSE"; } Compartilhar este post Link para o post Compartilhar em outros sites
leooizepi 1 Denunciar post Postado Janeiro 30, 2009 eh isso ae beraldo... mais uma vez obrigado!! abraço!!! Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Janeiro 31, 2009 apenas tome cuidado com uso do eval quando os dados provierem de usuarios. é possível fazer PHP Injection Compartilhar este post Link para o post Compartilhar em outros sites