为什么它不按表中的公式计算?

时间:2013-03-05 20:25:20

标签: php mysql

我从用户输入3个值。我想根据表格列中的公式计算。我打印出公式,但我想根据公式计算。我正在使用php和mysql。 请帮助我并指导我如何以这种方式实现它?

Html代码:

<form action="testcalc1.php" method="post">
Size 1: <input type="text" name="size1" /><br><br>
Size 2: <input type="text" name="size2" /><br><br>
Quantity: <input type="text" name="quanity" /><br><br>
<input type="submit" />
</form>

Php代码:

$s1 = $_POST['size1'];
    $s2 = $_POST['size2'];
    $s3 = $_POST['size2'];

    $rec= mysql_query("SELECT unit_cost FROM mat WHERE mat_name='ball'") or die(mysql_error());

    $s5 = mysql_fetch_assoc($rec);
    $s4 = $s5['unit_cost'];

    echo $s4;

Mat table:

mat_name || UNIT_COST

球|| $ S1 * $ S2 * $ S3

输出我现在得到的是:: $ s1 * $ s2 * $ s3

1 个答案:

答案 0 :(得分:2)

应该是

eval('$s4='.$s5['unit_cost'].';');

$s4=eval('return '.$s5['unit_cost'].';');

但是,您不应使用mysql_*函数(使用mysqli_*PDO),如果您使用$_POST中的eval()变量,则不安全不检查它们是否真的是数字。