【问题标题】:PHP echo of SQL querySQL查询的PHP回显
【发布时间】:2018-08-20 12:23:24
【问题描述】:

我的代码有问题。我无法理解代码有什么问题或我失败的地方。

我基本上想从我的数据库中的一列计算多个数字的平均值。

/*data calculation*/
$calculation = "SELECT AVG(current) FROM offset_items";
$calculation_result = mysqli_query($connect, $calculation);

if($average = mysqli_fetch_assoc($calculation_result))
    {echo "Average: ".$average["current"]."<br>";}

这里的问题是,我在“平均:”之后只显示一个空白。 但是,如果我从查询中删除 AVG,我会得到该 DB 列的所有结果。数据库包含我在同一个脚本中导入的数据,并显示它们以供测试。

我得到以下错误,这是回声的行:

Notice: Undefined index: current in C:\MAMP\htdocs\Offset_Items.php on line 50

我认为这里的问题是 mysqli_fetch_assoc,但我不确定。 挖掘关于“未定义索引”的多个主题并没有解决我的问题。即使我之前将变量声明为 NULL。

我与编程脱节,但目前又开始学习它来编写一些工作工具。所以如果你们能帮助我,我将非常感激。

【问题讨论】:

  • 能否分享一下代码...

标签: php sql indexing undefined average


【解决方案1】:

尝试打印结果的 PHP 代码如下:

$average = mysqli_fetch_assoc($calculation_result);
echo "Average: ".$average["current"]."<br>";

但生成结果集的查询不包含任何名为current 的列。

SELECT 子句中为表达式AVG(current) 使用alias,以在结果集中获得具有所需名称的列:

SELECT AVG(current) AS current FROM offset_items

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-22
    相关资源
    最近更新 更多