sql >> Base de Datos >  >> RDS >> Mysql

almacenado en el campo mysql pero sin salto de línea cuando se hace eco


Al enviar a un área de texto, debe llamar a htmlentities htmlspecialchars si su texto contiene HTML.

<textarea><?php echo htmlspecialchars($text); ?></textarea>

Eso convertirá tu &lt;br /&gt; a &lt;br /&gt; . Si dejas el &lt;br /&gt; sin codificar, simplemente se interpretarán como HTML.

Si su objetivo es mostrar &lt;br /&gt; u otro HTML en el área de texto tal como está escrito en la base de datos, debe escapar todo el código que, de lo contrario, se interpretaría como HTML.

editar

Si desea generar saltos de línea en lugar de &lt;br /&gt; puedes usar str_replace :

<textarea><?php echo str_replace('<br />', "\r\n", $textarea); ?></textarea>

Pero recuerde que todos los demás HTML se interpretarán y no se mostrarán. Creo que debería resolver su problema en la fuente y almacenar el CRLF en la base de datos si no necesita el HTML.