En las FAQ el tema se trata más de una vez...
Un salto de línea textual (\n) no significa nada para HTML. Para HTML un salto de línea se indica con la etiqueta <br>... ve tu código fuente y entenderás.
la función que te hace el cambio automático (como ya te dijeron) es
nl2br() y debes utilizarla al imprimir resultados.