php - 如何在 PHP 中回显来自 mysqli_multi_query 的 HTML 值

标签 php mysql mysqli mysqli-multi-query

使用 mysqli_multi_query 时,我能够从数据库中获取显示的值。但是我无法在 HTML 代码中打印。这可能是 while 循环的问题。下面是我的代码,它给出了三个 SQL 语句的 AVG。唯一的问题是在 HTML 中显示平均值。

<?php
    $con = new mysqli("localhost", "root","","survey");
    if ($con){ printf(""); }

    $query  = "SELECT AVG(workarea) FROM score;" ;
    $query .= "SELECT AVG(manager) FROM score;";
    $query .= "SELECT AVG(comm) FROM score;";

    // Execute multi query
    if (mysqli_multi_query($con,$query)) {
        do {
            if ($result=mysqli_store_result($con)) {
                // Fetch one and one row
                while ($row=mysqli_fetch_row($result)) {
                    printf("%s\n",$row[0]);
                }

                // Free result set
                mysqli_free_result($result);
            }
        } while (mysqli_next_result($con));
    }
?>
<div class="row count">
WORK AREA/UNIT SCORE : <?php echo $row[0]; ?> // echo $row[AVG(workarea)]  doesnot work
</div>

<div class="row count">
SUPERVISOR/MANAGER SCORE : <?php echo $row[0]; ?> // echo $row[AVG(manager)]     
</div>

<div class="row count">
COMMUNICATION SCORE : <?php echo $row[0]; ?> // echo $row[AVG(comm)] doesnot work
</div>

最佳答案

无需多重查询,您只需在单个查询中获得 AVG。并将您的 html 写入 while 循环中,如下所示

 $con = new mysqli("localhost", "root", "", "survey");
if ($con) {
    printf("");
}
$query = "SELECT AVG(workarea),AVG(manager),AVG(comm) FROM score;";
// Execute multi query
if ($result = $con->query($query)) {

    /* fetch object array */
    while ($row = $result->fetch_row()) {
        ?>
        <div class="row count">
            WORK AREA/UNIT SCORE : <?php echo $row[0]; ?> 
        </div>

        <div class="row count">
            SUPERVISOR/MANAGER SCORE : <?php echo $row[1]; ?>    
        </div>

        <div class="row count">
            COMMUNICATION SCORE : <?php echo $row[2]; ?> 
        </div>
        <?php
    }

    /* free result set */
    $result->close();
}

关于php - 如何在 PHP 中回显来自 mysqli_multi_query 的 HTML 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37804191/

相关文章:

php mysqli "No database selected"使用类

php - strtotime() 被认为是有害的?

php int 比较 "smaller or equal than"返回空还是 null?

MySQL 变量错误

Mysql 更改与另一个表有关系的主键列

php - MySQLI 准备的语句给了我奇怪的结果

PHPMailer 不适用于 gmail

php - Zend_Db 使用多个 AND OR 运算符的复杂 WHERE 子句

mysql - 如何在nodejs中使用hooks/sequelize更新数据库

php - 数据未插入第二个表 (MYSQLi)