我有一个事件数据库表。每个事件都有一个分配给它的位置。我想显示10个最常用位置的编号列表。我希望以以下格式查看它:
以此类推。
使用PHP 7.2.12和MySQL 5.6,以及php编码的初学者...
我想出了一个代码(下面的$ query)在phpMyAdmin中提供了我想要的列表,但我想在WordPress主页上的小部件中使用它。
我知道有一个SELECT TOP 10,从理论上讲,它应该可以满足我的要求,但似乎不起作用...
<?php
require_once(ABSPATH . 'wp-settings.php');
$connection = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD);
mysqli_select_db($connection, DB_NAME);
$query = "SELECT count(*), eventplace FROM tng_events GROUP BY eventplace HAVING COUNT(*) > 1 ORDER BY count(*) DESC LIMIT 10";
$result = mysqli_query($connection, $query);
?>
当我回显$ result [0]时;我只得到所有地方的总数。 当我回显$ result [1];我什么也没得到,只有一个空白。
当我使用 SELECT count(),事件场所FROM tng_events GROUP BY事件场所HAVING COUNT()> 1 ORDER BY count(*)DESC LIMIT 10 在phpMyAdmin中,它提供了一个包含10个位置及其各自计数值的表。
我希望输出的内容与phpMyAdmin中的内容相同,但形式略有不同(请参见上文)。我想我需要创建两个变量($),一个包含事件场所名称,另一个包含计数,但是我不确定该怎么做。然后输出可能类似于:
echo
答案 0 :(得分:0)
使用foreach循环,可以遍历结果并回显循环内的每个元素,如下所示。
$query = "SELECT count(*) as count , eventplace FROM tng_events GROUP BY eventplace HAVING COUNT(*) > 1 ORDER BY count(*) DESC LIMIT 10";
$result = mysqli_query($connection, $query);
"<ol>";
foreach ($result as $row){
echo "<li>" .$row['eventplace']. ' ('. $row['count']. ')'. "</li>";
}
"</ol>";