我想在PHP中创建一个返回最大值的函数,该函数接收函数作为参数接收的表名和列名,我想要应用过滤器最大值。 例如:
function mymaxvalue($nametable,$namecolum)
{
global $con;
global $valueMax;
$sql = "SELECT MAX($namecolum) FROM '$nametable'";
$result = mysql_query($sql, $con);
while ($row = mysql_fetch_array($result)) {
echo $temperaturaMax = $row['MAX($namecolum)'] ;
}
}
不幸的是,当我调用该函数时,它不起作用。谢谢你的帮助。
答案 0 :(得分:2)
首先,不要使用
mysql_*
函数,因为它们已被弃用 在PHP 7中完全删除。
两件事:
1)从表名中删除单引号。
更正了SQL:
$sql = "SELECT MAX($namecolum) FROM $nametable";
2)使用双引号作为单引号内的变量不被解析:
echo $temperaturaMax = $row["MAX($namecolum)"];
OR
第二种方法:
使用别名:
更正了SQL:
$sql = "SELECT MAX($namecolum) as maxVal FROM $nametable";
echo $temperaturaMax = $row['maxVal'];
答案 1 :(得分:1)
$row['MAX($nameVariable)']
无法工作。试试这个:$row['MAX(' . $nameVariable . ')']
或者,重命名列:
$sql = "SELECT MAX($namecolum) AS 'max' FROM '$nametable'";
echo $temperaturaMax = $row['max'] ;