我在SQL中创建了一个与此类似的数据库(表)。
x y z
1 x1 y1 z1
2 x2 y2 z2
这是我创建的表格;现在我想用PHP做一些数学运算。如何检索数据并对其执行数学运算? 如何从数据库表中获取数据并将其保存在PHP变量中?
function ans($x1, $y2, $z2)
{
#a = x1 - y2;
#z2 = $z2 -$a;
}
答案 0 :(得分:1)
代码如下:
<?php
$con = mysql_connect("localhost","username","password");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("database", $con);
$xAnswer = 0;
$yAnswer = 0;
$zAnswer = 0;
$result = mysql_query("SELECT x,y,z FROM MathTable");
while($row = mysql_fetch_array($result))
{
$xAnswer = Add($row["x"],$row["y"]);
$yAnswer = Multiply($row["z"],$row["y"]);
$zAnswer = Subtract($row["z"],$row["x"]);
}
mysql_close($con);
function Add($x,$y)
{
return $x + $y;
}
function Subtract($x,$y)
{
return $x-$y;
}
function Multiply($x,$y)
{
return $x*$y;
}
function Divide($x,$y)
{
return $x/$y;
}
?>
或者,可以在sql中处理数学以及跟随,然后将答案拉入变量:
SELECT (x+y) AS Add,(x-y) AS Subtract,(z/x) AS Divide FROM MathTable
记录集的循环如下
while($row = mysql_fetch_array($result))
{
$xAnswer = $row["Add"];
$yAnswer = $row["Subtract"];
$zAnswer = $row["Divide "];
}
请记住,每次循环递增时变量都会有不同的答案,因为表中的记录数量很多,所以你可能想要一个运行总计,或者你可以使用上面的Add示例变量继续运行总计:
$xAnswer = $xAnswer + $row["Add"];
答案 1 :(得分:0)
mysql_connect将被弃用。 http://php.net/manual/en/function.mysql-connect.php
使用mysqli代替 http://www.php.net/manual/en/book.mysqli.php