Hola, no se si estaré equivocada, pero yo veo mal esto:
Código PHP:
$query = "Select id_post,titulo FROM noticias WHERE id_post='$i'";
Yo diría que es:
Código PHP:
$query = "Select id_post,titulo FROM noticias WHERE id_post=' " . $i . " ;
vamos que tal y como lo tienes, si pones echo $query te escribiría:
blablabla WHERE id_post=$i en lugar del valor de esta variable, yo creo que por eso no te funciona y sí poniendo directamente un valor.
Saludos
No se porque no sale la comilla simple después de $i . debería aparecer...