Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/07/2010, 03:59
Avatar de C2am
C2am
 
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 2.005
Antigüedad: 15 años, 3 meses
Puntos: 306
Respuesta: Paginar y crear links en php

Hola
Para acortar el texto utilizo lo siguiente
Código PHP:
Ver original
  1. $ncaract= strlen($texto);
  2.  
  3. $long= 275; //cantidad de caracteres que voy a mostrar
  4.  
  5. //si el texto tiene menos caracteres imprimo todo
  6. if ($long > $ncaract )    { echo "$texto"; }
  7.  
  8.  
  9.  //si el texto tiene igual o más caracteres aplico la funcion cortarTexto
  10. //después aplico una función que me cierre todos los tag html
  11. // que al cortar puedan quedar abiertos.
  12.   if ($long <= $ncaract){echo cerrar_tags( cortarTexto($texto, $long, 0));}


La función cortarTexto - no recuerdo de donde la saque para mencionar al autor, disculpen.
Código PHP:
Ver original
  1. function cortarTexto($texto, $longitud, $parte = 1)
  2. {
  3.            
  4.     if ($parte < 1 || strpos($texto, ' ') === false)
  5.     {
  6.         $parte = 1;
  7.     }
  8.     elseif ($parte > (strlen(substr($texto, 0, strrpos($texto, ' '))) / $longitud))
  9.     {
  10.         $parte = strlen(substr($texto, 0, strrpos($texto, ' '))) / $longitud;
  11.     }
  12.      
  13.     $desplazamiento = ($parte - 1) * $longitud;
  14.      
  15.     if (!$desplazamiento || substr($texto, $desplazamiento - 1, 1) == ' ')
  16.     {
  17.         $pos1 = $desplazamiento;
  18.     }
  19.     else
  20.     {
  21.         $pos1 = strpos($texto, ' ', $desplazamiento) + 1;
  22.     }
  23.      
  24.     if ($longitud <= ($pos1 - $desplazamiento))
  25.     {
  26.         $desplazamiento = $pos1;
  27.     }
  28.      
  29.     if (substr($texto, $desplazamiento + $longitud - 1, 1) == ' ')
  30.     {
  31.       $pos2 = $desplazamiento + $longitud;
  32.     }
  33.     elseif(strpos($texto, ' ', $desplazamiento + $longitud) !== false)
  34.     {
  35.         $pos2 = strpos($texto, ' ', $desplazamiento + $longitud);
  36.     }
  37.     else
  38.     {
  39.         $pos2 = strlen($texto);
  40.     }
  41.      
  42.     return substr($texto, $pos1, $pos2 - $pos1);
  43. }
  44. ?>




En cuanto al paginador, el que uso y es de muy fácil aplicación es:

PHPPaging - Paginación de Resultados
Versión 2.1
Copyright (C) 2008 Marco A. Madueño Mejía ([email protected])
__________________
El mundo nada puede contra un hombre que canta en la miseria.
-- Ernesto Sábato--