Comunidad de diseño web y desarrollo en internet online

Problemas con "enter's" <br> en PHP MySQL

Citar            
MensajeEscrito el 22 Oct 2009 04:52 am
Hola, es mi primera pregunta en el foro, quería consultar si alguien sabe como hacer para que cuando imprimo el registro que traigo de la base de datos MySQL respete los <br> es decir los interlineados. Por ejemplo:

Ahora me trae el texto de esta manera: Primera fila de texto. Segunda fila de texto. Tercera fila de texto. Cuarta fila de texto.

Debería imprimirlo de esta manera: Primera fila de texto.
Segunda fila de texto.
Tercera fila de texto.
Cuarta fila de texto.

Por otro lado quiero saber, cómo hago para ver los caracteres latinos, ya que no me los muestra, se visualizan simbolitos y no las letras. Cuando entro al phpmyadmin puedo ver el texto correcto con los áéíóú por ejemplo, pero en mi pagina veo simbolos raros.

Espero haberme explicado. Espero una respuesta muchas gracias, esta pagina está buenisima. :D

Por BorisARG

1 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 22 Oct 2009 05:42 am
bueno primero el salto de linea lo puedes hacer al momento de mostrar la info q llega de la base de datos colocando la info dentro de esta funcion nl2br($datos_de_la_db); y en lo referente a los caracteres revisa la codificacion de la web en el header html que tiene trata de usar iso o sino prueba tambien con utf o simplemente has esto utf8_decode($data_de_la_db);

saludos

Por talcual

686 de clabLevel



 

Colombia

firefox
Citar            
MensajeEscrito el 22 Oct 2009 06:49 am
bueno primero para el salto de linea es sencillo con nl2br($res['columna']); remplasa todos los retornos de carro por un <br />, ahora lo de los caracteres especiales.. aqui es un rollo, si lo quieres resolver por la coficacion como te dice "talcual", ya que primero tienes que idetificar con que codificacion esta saliendo tu MySQL si con latin o con utf8, y bien elejir una de las codificaciones y "emparejar" por ejemplo yo siempre utlizo utf8 y no laint iso-8859-1 que por lo generar es por dejecto primero tengo que asegurarme que todos mis archivos fuentes esten escrito en dicha codificacion, segundo devo de definir en el header del html que codificacion estoy utilizando con
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
o
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

segun la que escojas. yo voy x utf-8

despues de que estes seguro de que tus fuentes estan en la misma codificacion y estas definiciendo el meta para decirle al explorador que codificacon esta, hay que tabien checar que condificacion nos esta mandado mysql las cadenas de salidas,
para eso hay que usar utf8_encode o bien utf8_decode segun se tencesite, siempre esto es un rollo por que algunas veces los server cambian, yo por ejemplo en localhost nunca tengo problemas pero ya cuando subo a servidor simpre tengo que meten el encode para que los textos salgan bien. aqui el unico chiste es idetificar cual codificacion vas a utilizar y serciorarte que todo que de bajo el mismo encode y con eso tus acetos se deverian de ver, tabien checa cuando se inserta a la base de datos que se esten insertando los caracteres correctos si no de igual forma utiliza las funciones que te mencione

ahora otro consejo para que tu salida de html y aun mas de seguridad, hay algo que se llama scritig injection esto quiere decir que en tu campo de texto que ingresas a la base de datos pueden meter codigo html o bien javascript y cuando se ve la pagina obiamente no es lo que querias que viera ya desde que el usuario te meta html y te deforme la pagina o bien que te meta algun script en javascript que te afecte para evitar eso puedes utlizar las funcion htmlentities($texto) que te retorna una cadena con todo los caracteres en su equivalente html tambien incluso las tildes y eso te puede servir tambien para los acentos,
te acosejo que visites esta pagina y le des una leida a las funciones de cadena de php pudes aprender mucho :

http://www.php-es.com/ref.strings.html

Por wariodiaz

55 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Oct 2009 01:05 pm
Hola muchachos, muchisimas gracias por la información que me pasaron. Pude solucionar los dos problemas que tenía, tanto el de retorno de carro como el de la codificación latina. Les mando un saludo y muchas gracias nuevamente. :D

Por BorisARG

1 de clabLevel



Genero:Masculino  

msie8

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.