Perche' esegui sempre la stessa query. poi non ti serve annidare la seconda select:
while continua fino a quando non ricevera' un false da mysql_fetch_array()codice:$risultato = mysql_query("SELECT * FROM posts WHERE sec = '$sec'"); while($estrai = mysql_fetch_array($risultato) { echo $estrai["title"] ."<br/>"; }