php - 如何在PHP中显示多条总记录中表行中的两条记录?

标签 php html mysql

我必须在一个表中显示 SQL 记录(以 div 形式显示),其中一行只能显示 2 条记录。记录总数即 n 不是固定的,也不是数组。行数将取决于可用记录的数量。我尝试了几种方法,例如定义“define('TABLE_COLS', 2);”并在 while 循环中使用 for 循环,但他们没有给我所需的结果。我正在处理的代码如下:

    echo "<table>";
    $sql = "Some SQL";
    $result = mysql_query($sql);
    $num = mysql_numrows($result);
    $i = 0;
    define('TABLE_COLS', 2);

    echo "<tr>";
        while ($i < $num) {
        //  for($i=0; $i<=2; $i++){
                $name = mysql_result($result,$i,"name");
                $Count = mysql_result($result,$i,"count");                      
        //  echo "<tr>";
                echo "<td>";
                    echo "<div>";
                        echo "<div>";
                            echo "$name";
                        echo "</div>";
                        echo "<div>";
                            echo "$Count";
                        echo "</div>";      
                    echo "</div>";
                echo "</td>";       
        //  echo "</tr>";
            $i++;
            }
    echo "</tr>";
    mysql_free_result($result);
echo "</table>";

我正在寻找的结果是这样的: 现在我必须添加相应事件 id 的计数值并将其显示在结果表中,如下所示。我对 PHP 很陌生,所以请帮助我。非常感谢任何评论。

+------------+   +--------------+
|  Abby Bory |   |  Manny Mua   |
+------------+   +--------------+
|      4     |   |     22       |
+------------+   +--------------+
+------------+   +--------------+
|  Senyz Dory|   |  Kory Bua    |
+------------+   +--------------+
|      8     |   |     27       |
+------------+   +--------------+ 

最佳答案

如果这有助于解决您的问题,您可以尝试一下。我会声明多个变量以使管理更容易,例如更改每行的列。给定的代码应该适应每行任意数量的列。让我知道这是否是您所需要的。 另外,请考虑使用 mysqli 而不是 mysql

更新 1:包含示例数据库格式以标准化格式

数据库.php

<?php

$db_servername = "DATABASE SERVER NAME";
$db_username = "DATABASE USERNAME";
$db_password = "DATABASE PASSWORD";
$db_database = "DATABASE TABLE";

// Create connection
$con = new mysqli($db_servername, $db_username, $db_password, $db_database);

// Check connection
if ($con->connect_error) {
    die("Connection failed: " . $con->connect_error);
}

?>

示例代码

require "database.php";

global $con;
echo "<table>";

$sql = "SOME SQL";
$result = mysqli_query($con, $sql);
// define number of columns per row
$num_col = 2; 
// calculate total number of row based on columns per row defined
$total_row = intVal(mysqli_num_rows($result) / $num_col);
// calculate left over result if the division result is not perfect number
$left_over = mysqli_num_rows($result) % $num_col;

$counter = 0;

while($counter < $total_row){
   echo '<tr>';
   for($i = 0; $i < $num_col; $i++){
       $row = mysqli_fetch_array($result);
       echo "<td>";
       echo "<div>".$row["name"]."</div>";
       echo "<div>".$row["count"]."</div>";
       echo "</td>";
   }
   echo '</tr>';
   $counter++;
}

echo "<tr>";
while($left_over > 0 ){
   $row = mysqli_fetch_array($result);
   echo "<td>";
   echo "<div>".$row["name"]."</div>";
   echo "<div>".$row["count"]."</div>";
   echo "</td>";
   $left_over--;
}
echo "</tr>";

echo "</table>";

关于php - 如何在PHP中显示多条总记录中表行中的两条记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36549739/

相关文章:

html - 图片无边框

php - 如何检查数据库中出现的单词?

php - 如何将更改应用到动态表单

PHP - 在 $_SESSION 数组中找不到现有的字符串值

php - 请帮我清理转到 mysql 的 php 数据

php - 如何使用MySQLi处理失败?

css - 结合 Angular 5 使用内置验证所需属性的浏览器?

html - div居中的定位问题

php - PHP函数中处理数据库连接的方法

mysql - MYSQL 查询中奇怪的空集结果