Tente isso..
Consulte todas as cidades com estado, ordene primeiro por estado e depois por cidade:
SELECT id, alphaname, state
FROM regional
ORDER BY state ASC, alphaname ASC
Organize seu conjunto de dados em uma matriz de 2 dimensões:
$states = array();
while($thearray = mysql_fetch_array($list))
{
$states[$thearray[state]][$thearray[id]] = $thearray[alphaname];
}
Agora o conteúdo do seu
$states
deve ser algo como:Array
(
[AK] => Array (
[id_1] = Anchorage
[id_2] = Juneau
)
[CA] => Array (
[id_3] = Los Angeles
[id_4] = San Diego
[id_5] = San Francisco
)
)
Gere sua apresentação HTML:
OBSERVAÇÃO:adicione âncora para refletir a pergunta proposta.
foreach($states as $state_name => $cities)
{
echo '<h3>'.$state_name.'</h3>';
echo '<ul>';
foreach($cities as $id => $city_name)
{
echo '<li><a href="info.html?id='.$id.'">'.$city_name.'</a></li>';
}
echo '</ul>';
}