Mysql
 sql >> Database >  >> RDS >> Mysql

memorizzato nel campo mysql ma nessuna interruzione di riga durante l'eco


Quando si esegue l'output in un'area di testo è necessario chiamare htmlentities htmlspecialchars se il tuo testo contiene HTML.

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

Ciò convertirà il tuo &lt;br /&gt; a &lt;br /&gt; . Se lasci il &lt;br /&gt; non codificati verranno semplicemente interpretati come HTML.

Se il tuo obiettivo è visualizzare &lt;br /&gt; o altro HTML nell'area di testo così come è scritto nel database è necessario eseguire l'escape di tutto il codice che altrimenti verrebbe interpretato come HTML.

modifica

Se vuoi generare interruzioni di riga invece di &lt;br /&gt; puoi usare str_replace :

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

Ma ricorda che tutti gli altri HTML verranno interpretati e non visualizzati. Penso che dovresti risolvere il tuo problema alla fonte e memorizzare il CRLF nel database se non hai bisogno dell'HTML.