Foros del Web » Programando para Internet » PHP »

Dividir un texto en parrafos

Estas en el tema de Dividir un texto en parrafos en el foro de PHP en Foros del Web. Que tal buena dia, he realizado un codigo el cual me divide un texto en parrafos, esto lo hace en cuanto encuentra un punto, pero ...
  #1 (permalink)  
Antiguo 29/04/2010, 07:45
 
Fecha de Ingreso: mayo-2009
Mensajes: 242
Antigüedad: 15 años, 7 meses
Puntos: 2
Pregunta Dividir un texto en parrafos

Que tal buena dia, he realizado un codigo el cual me divide un texto en parrafos, esto lo hace en cuanto encuentra un punto, pero me ha sucedido un problema, cuando dentro del texto que voy a dividir encuentra por ejemplo Dr. Rodrigo, esa frase la divide en parrafo y no se como puedo solucionar ese problema. De antemano gracias.Saludos
  #2 (permalink)  
Antiguo 29/04/2010, 07:48
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 2 meses
Puntos: 334
Respuesta: Dividir un texto en parrafos

necesitas poner el codigo para dividir en parrafos asi te podremos ayudar..
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 29/04/2010, 07:50
 
Fecha de Ingreso: mayo-2009
Mensajes: 242
Antigüedad: 15 años, 7 meses
Puntos: 2
Respuesta: Dividir un texto en parrafos

aqui el codigo:

Código PHP:
$qnot sprintf("SELECT noticia,enlace,titulo,img1,img2,img3 FROM noticias WHERE id_noticia='".mysql_real_escape_string(trim($_GET['idn']))."'");
      
$rnot mysql_query($qnot,$con);
      
$rownot mysql_fetch_array($rnot); 
      
      
$parrafo explode('.',$rownot['noticia']);
      
$numparrafos count($parrafo);
      
$contador=0;

      while(
$numparrafos 0){
        
$parrafonoticia $parrafo[$contador].'.';

        <
p id="parrafoinfo">$parrafonoticia</p>
  
          
$numparrafos--;
      
$contador++;
     } 
  #4 (permalink)  
Antiguo 29/04/2010, 07:58
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 2 meses
Puntos: 334
Respuesta: Dividir un texto en parrafos

bueno fijate que eres muy parcial en tus requerimientos
solo le dices que separe el codigo por un punto.. y tambien existen los punto seguidos, puntos suspencivos, etc... lo que debes hacer (como consejo) es usar una expresion regular PCRE para darle mas concistencia a la separacion.

Código PHP:
Ver original
  1. $parrafo = preg_split('/\.([\n\r]|<\/p>)/', $rownot['noticia']);

podrias probar con eso.. ahi le digo cualquier punto que sea seguido de un salto de linea o un termino de parrafo..

saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 29/04/2010, 08:09
 
Fecha de Ingreso: mayo-2009
Mensajes: 242
Antigüedad: 15 años, 7 meses
Puntos: 2
Pregunta Respuesta: Dividir un texto en parrafos

Disculpa he puesto el codigo que me proporcionaste y me imprime la palabra Array. Porque sera. Gracias por tu codigo
  #6 (permalink)  
Antiguo 29/04/2010, 08:15
fiu
 
Fecha de Ingreso: diciembre-2006
Ubicación: Barcelona
Mensajes: 128
Antigüedad: 18 años
Puntos: 8
Respuesta: Dividir un texto en parrafos

Si los datos los has introducido desde un textarea la base de datos habrá guardado los saltos de linea como \r
Entonces si tienes los párrafos en la base de datos, los puedes poner en php asi :

Código PHP:
Ver original
  1. str_replace("\r","<br />",$rownot['noticia');

o

Código PHP:
Ver original
  1. str_replace("\r","</p><p>",$rownot['noticia'); // aqui tendrás que vigilar si es el primero y ultimo para abrir o cerrar bien el parrafo

quizá no es el caso, pero suele pasar lo que dices e intentas hacer, cuando pasas datos de bbdd a html.
  #7 (permalink)  
Antiguo 29/04/2010, 08:20
 
Fecha de Ingreso: mayo-2009
Mensajes: 242
Antigüedad: 15 años, 7 meses
Puntos: 2
Pregunta Respuesta: Dividir un texto en parrafos

Muchas gracias por las respuestas, lo que pasa es que no logro obtener el valor de la variable $parrafo. Hago lo siguiente:

Código PHP:
          $contador=0;
      
$parrafo preg_split('/\.([\n\r]|<\/p>)/'$rownot['noticia']);

          while(
$numparrafos 0){
        
$parrafonoticia $parrafo[$contador].'.';

        <
p id="parrafoinfo">$parrafonoticia</p>
      
          
$numparrafos--;
      
$contador++;
     } 
Y no me arroja nada. No se si este correcta la manera de obtener el valro de la variable $parrafo.
  #8 (permalink)  
Antiguo 29/04/2010, 08:30
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 9 meses
Puntos: 77
Respuesta: Dividir un texto en parrafos

Y donde defines $numparrafos? :/
  #9 (permalink)  
Antiguo 29/04/2010, 08:33
 
Fecha de Ingreso: mayo-2009
Mensajes: 242
Antigüedad: 15 años, 7 meses
Puntos: 2
De acuerdo Respuesta: Dividir un texto en parrafos

disculpa era eso perdon po la distraccion.

Etiquetas: dividir, parrafos
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 11:24.