Foros del Web » Programando para Internet » PHP »

¿Como formatear datos que vienen desde MySQL?

Estas en el tema de ¿Como formatear datos que vienen desde MySQL? en el foro de PHP en Foros del Web. Tengo guardados datos en una base de datos pero al momento de imprimirlos el PHP no respeta el CSS. En el título, si es muy ...
  #1 (permalink)  
Antiguo 13/01/2014, 01:04
 
Fecha de Ingreso: mayo-2013
Ubicación: Cúcuta
Mensajes: 98
Antigüedad: 9 años
Puntos: 2
¿Como formatear datos que vienen desde MySQL?

Tengo guardados datos en una base de datos pero al momento de imprimirlos el PHP no respeta el CSS. En el título, si es muy largo, se llena todo el espacio y llega a un punto en el que no muestra más porque hay otro objeto encima de él.

Pero el título no es lo que más me preocupa... La noticia principal (que está almacenada en un campo longtext de MySQL y la cual se guarda desde un textarea) se muestra en una sola tira a no ser que yo mismo presione Enter en el textarea pero esa no es la gracia, sería muy cutre ya que no soy el único que editará allí.

Buscando soluciones encontré algo sobre la función nl2br pero no fui capaz de hacerla funcionar. Así que, ¿hay alguna forma de formatear el texto para que se adapte o respete el CSS en el que está encasillado? Mi código es el siguiente por si sirve de algo:

Código PHP:
                    <?php
                        $row_noticia 
$row['noticia'];
                        
$row_noticia_br nl2br($row_noticia);

                    
?>

<?php echo '<p>' .$row_noticia_br.'\n<br>\n'.$row_noticia'</p>' ?>
He intentado modificarlo de todas las maneras posibles pero no lo logro, ¿alguna ayudita? Cualquier ayuda será muy bien agradecida. Por favor no me envíen al manual de PHP sobre nl2br o al FAQ ya que de allí saqué el ejemplo y el manual no me ha servido de nada hasta el momento. Muchas gracias.
  #2 (permalink)  
Antiguo 13/01/2014, 01:52
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 14 años, 2 meses
Puntos: 574
Respuesta: ¿Como formatear datos que vienen desde MySQL?

nl2br debería funcionar .... si tienes los altos de linea guardados en bbdd... como guardas ese texto?

El hecho de que esos datos vengan de la bbdd no afecta para nada a CSS puesto que este se aplica en el lado cliente y cuando llegan al cliente los datos vengan de una bbdd o de un texto fijo son lo mismo.

Si no tienes guardados los saltos de linea y no puedes restaurarlos en la bbdd igual te sirve.

wordwrap — Ajusta un string hasta un número dado de caracteres

Una manera de ver si tienes los saltos de linea

Código PHP:
Ver original
  1. <?php echo '<pre>' .$row_noticia_br.'\n\n'.$row_noticia. '</pre>' ?>
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 13/01/2014, 07:56
 
Fecha de Ingreso: mayo-2013
Ubicación: Cúcuta
Mensajes: 98
Antigüedad: 9 años
Puntos: 2
Respuesta: ¿Como formatear datos que vienen desde MySQL?

Funcionó perfecto colocandole el "<pre>". Me colocó los saltos de linea y cumplió perfectamente con el CSS. Ahora mi problema es que uso Bootstrap y "<pre>" es una etiqueta que sirve para mostrar código... ¿Como hago que funcione con una etiqueta <p>?
  #4 (permalink)  
Antiguo 13/01/2014, 08:08
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 14 años, 2 meses
Puntos: 574
Respuesta: ¿Como formatear datos que vienen desde MySQL?

Código PHP:
Ver original
  1. $row_noticia_br = nl2br($row_noticia, true);

Intenta esto por las dudas....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #5 (permalink)  
Antiguo 13/01/2014, 08:52
 
Fecha de Ingreso: mayo-2013
Ubicación: Cúcuta
Mensajes: 98
Antigüedad: 9 años
Puntos: 2
Respuesta: ¿Como formatear datos que vienen desde MySQL?

No, no funcionó colocandole ese parámetro "true". Funcionó perfecto con <pre> pero necesito que sea con <p> :( ¿Alguna otra solución?
  #6 (permalink)  
Antiguo 13/01/2014, 13:43
 
Fecha de Ingreso: mayo-2013
Ubicación: Cúcuta
Mensajes: 98
Antigüedad: 9 años
Puntos: 2
Respuesta: ¿Como formatear datos que vienen desde MySQL?

¿Alguna idea? El <pre> me muestra el texto preformateado porque Bootstrap lo usa para el código así que no se me ejecutará el código que coloque dentro del <textarea> (aparte de que se ve feo) ¿alguna solución para hacerlo funcionar con <p>? A
  #7 (permalink)  
Antiguo 16/01/2014, 12:21
 
Fecha de Ingreso: mayo-2013
Ubicación: Cúcuta
Mensajes: 98
Antigüedad: 9 años
Puntos: 2
¿Como formatear texto que viene desde MySQL?

Buenas tardes, tengo un textarea que me almacena el texto en MySQL, funciona de maravilla. El problema es al imprimir este texto. Si uso:

Código PHP:
Ver original
  1. <?php echo '<p>' .$row_noticia_br. '</p>' ?>

El texto sale de los límites establecidos por el CSS, mientras que si uso

Código PHP:
Ver original
  1. <?php echo '<pre>' .$row_noticia_br. '</pre>' ?>

El texto respeta los límites que están establecidos pero sale con estilo de máquina de escribir y las imágenes se ven mal. ¿Alguna idea para solucionar esto? Muchas gracias
  #8 (permalink)  
Antiguo 16/01/2014, 12:24
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 14 años, 2 meses
Puntos: 96
Respuesta: ¿Como formatear texto que viene desde MySQL?

Prueba asi
Código PHP:
Ver original
  1. <?php echo '<p>' .nl2br($row_noticia_br). '</p>' ?>
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.

Etiquetas: css, formatear, formato, mysql, textarea
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:00.