php - php 回显每个唯一的 sql 顺序
问题描述
从 db 表中,我查询所有结果并按位置排序。我将此查询回显到复选框中。所以每个地方都有自己的复选框。最重要的是复选框有一个标题,select one or multiple places
但现在我还想为每组地方添加一个标题。
我在数据库中有以下列:
id, ewladressenplaats, postalcode
1 amsterdam 1001
2 amsterdam 1002
3 amsterdam 1003
4 rotterdam 2001
5 rotterdam 2002
6 maastricht 3001
7 hengelo 4001
8 hengelo 4002
我运行这个 sql 查询:
$query = 'SELECT * FROM ##_adressen_adres ORDER BY ewladressenplaats';
然后我回应这个:
echo "<div";
echo "<div class='header'>Selecteer een of meerdere plaatsen</div>";
foreach($rows as $row) {
echo "<div class=''> <label for='".$row->ewladressenplaats."'>".$row->ewladressenplaats."</label><input type='checkbox' name='".$row->ewladressenplaats."' value='".$row->ewladressenpostcodes."'></div>";
};
echo "</div>";
这总共创建了 8 个复选框,看起来有点像这样[] = checkbox
**Selecteer een of meerdere plaatsen**
amsterdam []
amsterdam []
amsterdam []
rotterdam []
rotterdam []
maastricht []
hengelo []
hengelo []
但我怎样才能让它像这样回声:
**Selecteer een of meerdere plaatsen**
**amsterdam**
amsterdam []
amsterdam []
amsterdam []
**rotterdam**
rotterdam []
rotterdam []
**maastricht**
maastricht []
**hengelo**
hengelo []
hengelo []
解决方案
首先将其分组为第一个循环,然后获取组的 plaats 列并创建新查询,然后向其添加条件,然后为组数据创建内部循环,此代码基于 sqlfiddle 中的数据
echo "<pre>";
$group_sql = "SELECT * FROM tbl GROUP BY plaats";
$group = $conn->query($group_sql);
while($row = $group->fetch_assoc()) {
$inner_sql = "SELECT * FROM tbl WHERE plaats = '" . $row['plaats'] . "' ORDER by plaats";
$inner = $conn->query($inner_sql);
echo "Group : " . $row['plaats'] . PHP_EOL;
while($inner_row = $inner->fetch_assoc()) {
echo "Plaats : " . $row['plaats'] . " Postal Code : " . $inner_row['postal_code'] . PHP_EOL;
}
echo "<br>";
}
echo "</pre>";
像这样返回
Group : Amsterdam
Plaats : Amsterdam Postal Code : 1001
Plaats : Amsterdam Postal Code : 1002
Plaats : Amsterdam Postal Code : 1003
Group : Hengelo
Plaats : Hengelo Postal Code : 4001
Plaats : Hengelo Postal Code : 4002
Group : Maastricht
Plaats : Maastricht Postal Code : 3001
Group : Rotterdam
Plaats : Rotterdam Postal Code : 2001
Plaats : Rotterdam Postal Code : 2002
推荐阅读
- javascript - 在数组中组合相同的变量并添加它们的值的总和
- performance - ElasticSearch,通过大数组值匹配
- c# - Crystal Report询问数据库用户名和密码VS 2008
- php - 使用 laravel excel 从服务器读取文件的问题
- java - 在 bitcoind 中创建 JSONRPCCLIENT 对象时出现空指针异常
- mysql - mysql查询如何用替换的字符串检查inarray
- linux - 如何在 redhat 7.6 中安装 oci.h 头文件
- google-analytics - Google Analytics(分析)广告具有可在 BigQuery“原始”数据中使用的原始数据
- javascript - onClick 活动选项卡添加/删除类
- android - 当我们尝试在颤动中使用 twitter 登录时,如何处理您的设备上未安装 twitter 异常