Cuando agitas con ese for, pisas el valor que tiene $row. Eso funcionaría bien SI Y SOLO SI, están todos los días del mes y los pedis ordenados, pero en tal caso no tendría sentido lo de los enlaces.
Bueno la idea es que recuperes los días y luego hagas la comparación:
Código:
...
$qr=mysql_query("SELECT dia FROM table;",$conn);
while($row= mysql_fetch_array($qr))
$dias[$row['dia']] = true;
for($i=1;$i<=date("t");$i++)
if($dias[$i]){
echo " <a href='nada.php'>".$i."</a>";
}
else{
echo " ".$i;
}
Saludos.