Foros del Web » Programando para Internet » PHP »

Partir una noticia

Estas en el tema de Partir una noticia en el foro de PHP en Foros del Web. os comento... estoy haciendo una web y quiero que en el index solo salga una parte de la noticia... como puedo hacerlo??? porque claro... puede ...
  #1 (permalink)  
Antiguo 25/03/2008, 09:50
Avatar de bels_mike  
Fecha de Ingreso: enero-2008
Ubicación: Toledo
Mensajes: 50
Antigüedad: 16 años, 3 meses
Puntos: 1
Partir una noticia

os comento... estoy haciendo una web y quiero que en el index solo salga una parte de la noticia... como puedo hacerlo??? porque claro... puede que corte alguna etiqueta html y se joda, habia pensado en poner algo que partiese la noticia y luego con un exlode dividrla en dos pero claro... eso que lo divide no se tiene que ver xDDD no se si se me entiende, crear la etiqueta <separador> y decirle a PHP que cuando aparezaca ese texto divida toda la cadena de texto en dos matrices.... en fin no se si lo entendeis, teneis alguna ayuda??? xD
  #2 (permalink)  
Antiguo 25/03/2008, 09:55
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Partir una noticia

Hola bels_mike,

Lo ideal para lo que propones es usar strip_tags junto con substr, para solo obtener una parte del texto sin formato.

Te invito a que busques en el foro podrás encontrar información y posts muy similares a este donde se proponen soluciones concretas.

Saludos.
  #3 (permalink)  
Antiguo 25/03/2008, 09:57
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 11 meses
Puntos: 49
Re: Partir una noticia

No entiendo muy bien tu duda pero si rescatas las noticias de tu BD y lo que deseas hacer es el famoso leer mas... puedes usar la función substr() para que en tu tabla se muestre una parte de la misma ejemplo:

Código PHP:
$contenido substr($row['contenido'], 0150); // En este caso mostrara 150 caracteres a partir del primer caracter de la noticia. 
Saludos.
  #4 (permalink)  
Antiguo 25/03/2008, 10:50
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 2 meses
Puntos: 67
Re: Partir una noticia

La idea que tienes de hacer una etiqueta que divida me parece la más correcta, yo hice eso y me fue muy bien. Como tú dices programas el php para que imprima solo hasta antes de la Etiqueta partidora, eso lo conseguirás con el strpos y el substr. Elige cualquier etiqueta que no exista en el XHTML y no se imprimirá cuando se visualice la noticia completa.
  #5 (permalink)  
Antiguo 25/03/2008, 11:35
(Desactivado)
 
Fecha de Ingreso: diciembre-2006
Mensajes: 225
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: Partir una noticia

tbn te puede funcar con el substr diciendole q solo te muestre una cantidad q tu le digas digase 300 caracteres un poco mas o un poco menos pero q antes leea cuantos caracteres tiene el texto luego saque cuantas paginas de 300 caracteres salen y luego q las imprima sera algo dificil pero no imposible
  #6 (permalink)  
Antiguo 25/03/2008, 13:39
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 2 meses
Puntos: 67
Re: Partir una noticia

Si, pero con la etiqueta partidora se podrá definir arbitrariamente en donde se desea que acabe la noticia.
  #7 (permalink)  
Antiguo 25/03/2008, 14:25
Avatar de Dragon_Mandarin  
Fecha de Ingreso: marzo-2005
Ubicación: Santiago de Chile
Mensajes: 231
Antigüedad: 19 años, 1 mes
Puntos: 14
Re: Partir una noticia

Por si necesitas una segunda opción, usa esto; lo extraje del foro (pero no recuerdo su autor, sorry):

<?php
function parrafin($string) {
$row_Texto = explode("\n", $string);
$parrafo = $row_Texto[0];
return( $parrafo );
}
?>

Lo que hace esto es cortar el texto en el primer párrafo del texto que vas a publicar. Luego, donde quieres que aparezca tu texto, pones:

<?php echo parrafin($row_Texto['Texto']); ?>

A continuación, instalas manualmente el texto "Leer Más..." lo enlazas -con los correspondientes parámetros- con la página donde estará el texto completo.

Y listo!

Huelga decir que debes cambiar todo de acuerdo al nombre que le hayas dado a los campos de la tabla de tu base de datos

A mi me ha servido de maravillas, funciona al 100%

Chau
  #8 (permalink)  
Antiguo 27/03/2008, 14:09
Avatar de bels_mike  
Fecha de Ingreso: enero-2008
Ubicación: Toledo
Mensajes: 50
Antigüedad: 16 años, 3 meses
Puntos: 1
Re: Partir una noticia

bueno :D os comento lo que he hecho, he partido el texto mediante la etiqueta <leermas> simple no??? luego cargo el texto de la noticia d e la base de datos y simple:
Código PHP:
$parte=explode("<leermas>","$new[texto]"); echo "$parte[0]"
Simple ¿no? y luego en "noticia.php?id=x" solo mostaria "$parte"
  #9 (permalink)  
Antiguo 27/03/2008, 15:32
Avatar de eulloa  
Fecha de Ingreso: octubre-2007
Ubicación: Donde caiga la noche, si mi hijo me deja
Mensajes: 691
Antigüedad: 16 años, 6 meses
Puntos: 5
Re: Partir una noticia

En las faqs de del foro está una solución que no recuerdo quien aportó, se trataba de hacer un explode con \n para mostrar el primer párrafo y para mostrar el texto completo nl2br, lo estoy usando actualmente y me va bien+
saludos
  #10 (permalink)  
Antiguo 27/03/2008, 15:37
Avatar de bels_mike  
Fecha de Ingreso: enero-2008
Ubicación: Toledo
Mensajes: 50
Antigüedad: 16 años, 3 meses
Puntos: 1
Re: Partir una noticia

ok gracias, me quedo con mi opcion jajajaja xD
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 01:04.