Bueno, no se como sea la estructura de tus tablas en tu bd, pero te doy una idea:
Tabla: categorias
id nombre_cat
1 amigos
2 familia
3 conocidos
4 foreros
Tabla: links
id id_cat link
1 2 gmail.html
2 1 hotmail.html
3 4 google.html
4 1 miweb.php
Segun veo tienes que extraer primeramente esa informacion de las categorias con una consulta tipo:
Código PHP:
//seleccionamos y ordenamos en forma ascendente
$consulta = mysql_query("select * from categorias order by id asc");
while($datos = mysql_fetch_assoc($consulta)){
echo "<b>- ".$datos["nombre_cat"]."</b><br>";
//ahora vamos a extraer los links correspondientes a esta categoria
$consulta2 = mysql_query("select * from links where id_cat='". $datos["id"] ."'order by link asc");
echo "<ul type=\"cicle\">";
while($datos2 = mysql_fetch_assoc($consulta2)){
echo "<li>".$datos["link"];
}
echo "</ul>";
}
No he probado el codigo, pues no tengo las tablas, pero espero que te pueda por lo menos orientar.
Saludos y nos cuentas.