Título: Saltos de linea textarea // Ajax y PHP Publicado por: Mr. Crowley en 27 Enero 2010, 03:38 am Hola! Esto en realidad no es una duda, mas bien, es una respuesta a todas aquellas personas que tienen el mismo problema que yo tuve hace unos dias.
Aveces queremos almacenar el contenido de un textarea tal y como el usuario lo ha dejado. Ejemplo: Código: Hola Si estamos usando javascript para pasar las variables al documento de PHP, nos vamos a encontrar con el detalle de que se eliminan los saltos de linea (porque? realmente no se). Despues de darle vueltas al asunto y probar con PHP funciones como nl2br y otras, me di cuenta de que el problema era la funcion javascript; los datos llegaban bien, pero los pasaba sin los saltos de linea. La solucion es escapar los caracteres... el salto de linea es %0A en javascript, entonces... deduje que: Código: variable = escape(document.getElementById('TextArea').value); Con eso reemplazamos los saltos de linea (%0A) por <br> (el salto de linea en HTML). Bien... PHP recibira esa variable perfectamente... con los saltos de linea. Pero para recuperar el valor de la base de datos y ponerlo de nuevo en un textarea es necesario hacer otro replace (con PHP): Código: $variable=str_replace("<br>","\\n",$iFila["CampoConSaltosDeLinea"]); A muchos de ustedes no les parecera la idea de almacenar tags de html en la bd, pero pueden idearse una mejor solucion; esta es una base para los que tenian la duda. Saludos |