Caracteres de enter... En php

Nuevamente, acá molestándote..
Mi pregunta es:
Tengo un campo en longtext, dicho campo es para que los usuarios digiten la referencia de algún producto y hagan clic en guardar y listo... Pero resulta que cuando utilizo un textarea (HTML), y lo guardo en dicho campo longtext, toma todo el texto junto, a pesar de que he presionado muchas veces el enter.. Algo así:
Este mensaje esta en primera linea
Este mensaje esta en segunda linea
Este mensaje esta en tercera linea
Así quiero que quede pero no, queda así..
Este mensaje esta en primera lineaEste mensaje esta en segunda lineaEste mensaje esta en tercera linea

1 respuesta

Respuesta
1
Php tiene una función que permite cambiar los saltos de línea por <br>. Te pongo un ejemplo:
<html>
<head>
</head>
<body>
<?php
if (isset($_POST['texto'])) {
echo "El texto es: " . nl2br($_POST['texto']);
} else {
echo "<form name='formu' method='POST'>";
echo "<textarea name='texto'></textarea>";
echo "<input type='submit'>";
echo "</form>";
}
?>
</body>
</html>
Como ves, si usar nl2br() te respeta los saltos de línea, pero sin usar esa función te pone todo seguido. Entonces tienes que almacenar el texto del textarea en tu base de datos y tras recuperarlo, para mostrarlo tienes que pasarlo primero a través de la función nl2br.
Quizá también puedas pasarlo por esa función primero y luego almacenarlo en la base de datos. Para mostrarlo sería de forma normal ya que lo guardaste de forma correcta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas