[英]Display Grouped Address data from MySQL using PHP
我知道这可能很简单,但是我是PHP和MySQL开发的新手,所以希望获得一些帮助。 我在Stack上找不到我能理解的现有示例,因此我将其发布在那里,希望获得一些指导。
我有一个包含地址信息的数据库表。 我将地址分为两个字段,house_number和street_name,我需要做的是显示按街道名称分组的信息,然后按门牌号排序。
我模拟了一个页面需要什么样的示例。 它在第一列中具有偶数地址,在第二列中具有奇数地址。 我正在使用Twitter Bootstrap进行格式化。
$address = mysql_query("SELECT id, house_number, street_name, full_address FROM resident WHERE neighborhood_id = $neighborhood_id order by street_name, house_number;");
它应该是什么样子
下方的HTML代码:
<!--STREET GROUPING -->
<div class="row-fluid">
<div class="span12">
<h3>ASHTON PARK WAY</h3>
</div>
</div >
<div class="row-fluid">
<div class="span6"><!-- EVEN ADDRESSES -->
<a href="#" class="btn btn-large btn-white btn-block">18102 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18104 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18106 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18108 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18110 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18112 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18114 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18116 Ashton Park Way</a>
</div><!-- END EVEN ADDRESSES -->
<div class="span6"><!-- ODD ADDRESSES -->
<a href="#" class="btn btn-large btn-white btn-block">18101 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18103 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18105 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18107 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18109 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18111 Ashton Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18113 Ashton Park Way</a>
</div><!-- END ODD ADDRESSES -->
</div>
<!-- END STREET GROUPING -->
<hr>
<!--STREET GROUPING -->
<div class="row-fluid">
<div class="span12">
<h3>HAMDEN PARK WAY</h3>
</div>
</div >
<div class="row-fluid">
<!-- EVEN ADDRESSES -->
<div class="span6">
<a href="#" class="btn btn-large btn-white btn-block">18102 Hamden Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18104 Hamden Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18106 Hamden Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18108 Hamden Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18110 Hamden Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18112 Hamden Park Way</a>
</div>
<!-- END EVEN ADDRESSES -->
<!-- ODD ADDRESSES -->
<div class="span6">
<a href="#" class="btn btn-large btn-white btn-block">18101 Hamden Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18103 Hamden Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18105 Hamden Park Way</a>
<a href="#" class="btn btn-large btn-white btn-block">18107 Hamden Park Way</a>
</div>
<!-- END ODD ADDRESSES -->
</div>
<!-- END STREET GROUPING -->
我不确定您要在这里更改什么。 Group By函数是SQL可能不会执行您认为应该在此处执行的操作。 通常最好在上下文中使用,例如
SELECT count(invoicesTotal),sum(invoicesTotal) FROM invoices GROUP BY customer
在您的数据库上,运行
SELECT * FROM resident GROUP BY street_name
您将只找回找到的第一个与street_name匹配的记录,这不是您在这种情况下要查找的记录。
我认为您现在使用ORDER BY street_name进行处理的方法是,house_number是最好的,并使用foreach来构建表。
也不要使用mysql扩展名。 使用mysqli扩展名。 mysql即将被弃用。 从初学者的角度来看,并没有太大的区别。
$address = mysql_query("SELECT id, house_number, street_name, full_address FROM resident WHERE neighborhood_id = $neighborhood_id group by street_name order by house_number");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.