SELECT firstname,lastname,country FROM TABLE WHERE listedagree='Y' ORDER BY country
当您在PHP上检索数据时,需要对其进行迭代,将acctual country保存在一个temp变量中,以便能够检测到它何时发生更改,例如您可以执行以下操作:
//Conect to the database
mysql_connect("hostaddress.com", "username", "password") or die(mysql_error());
//Selet the database to work with
mysql_select_db("Database_Name") or die(mysql_error());
$sql = "SELECT firstname,lastname,country FROM TABLE WHERE listedagree='Y' ORDER BY country";
//retrive the data
$result = mysql_query($sql) or die(mysql_error());
//Now iterate over the result and generate the HTML
$html = '';
$tmp_country = '';
while($data = mysql_fetch_array( $result ))
{
//If the country have changed
if($tmp_country != $data['country'])
{
//Check if we need to close the UL
if($tmp_country != '') {$html .= ""};
//Print the country header
$html .= "
$data['country']
";$htm l .= "
- ";
//store the last country
$tmp_country = $data['country'];
}
//Add the names to each country
$html .= "
$data['firstname'] $data['lastname']";}
//Close the last UL
$html .= "
";我不能尝试代码,所以也许它需要一些微调使它工作,但它会做的工作,如果你有任何问题,让我知道,我会帮助你。