Foros del Web » Programando para Internet » PHP »

como poner limitacion de string para "leer mas"

Estas en el tema de como poner limitacion de string para "leer mas" en el foro de PHP en Foros del Web. Hola gente, me gustaria saber como puedo hacer que cuando un string determinado pase de ciertos caracteres ejemplo 20, aparesca un link que tenga (leer ...
  #1 (permalink)  
Antiguo 02/01/2009, 14:58
Avatar de Fierce  
Fecha de Ingreso: marzo-2008
Mensajes: 216
Antigüedad: 16 años, 1 mes
Puntos: 3
Pregunta como poner limitacion de string para "leer mas"

Hola gente, me gustaria saber como puedo hacer que cuando un string determinado pase de ciertos caracteres ejemplo 20, aparesca un link que tenga (leer mas) y cuando se le de alli se despliege el texto entero, asi como el que usa tu.tv en la descripcion de este video:
http://www.tu.tv/videos/one-piece-382-sub-espanol


ejemplo:
asi se veria el contenido al principio:

Comentario: Hola nadamas, les traigo el nuevo episodio, espero les guste.
Visitanos en: http://monkeydlu... ( más)


y cuando se despliege se veria asi:


Comentario: Hola nadamas, les traigo el nuevo episodio, espero les guste.
Visitanos en: http://xxxxxxxxxxxxxxxxxxxx.xxx/
Y el foro: http://xxxxxxxxxxxxx.xxxxxxxxxxx.xxxxx/
Sigamos recorriendo el grand line. ( menos)

se que es una mescla de Javascript y php el problema es que no se muy bien como hacer la parte de la limitacion de string
  #2 (permalink)  
Antiguo 02/01/2009, 15:12
 
Fecha de Ingreso: diciembre-2008
Mensajes: 70
Antigüedad: 15 años, 4 meses
Puntos: 4
Respuesta: como poner limitacion de string para "leer mas"

Tienes primero que comprobar la longitud de la cadena con strlen() y aplicarla a travez de un if...else, luego tendrias que hacerle un substr() para recortar y al final ponerle los tres puntos y el enlace, no puedes dejar de hacer el if...else porque si no siempre te va a aparecer el enlace de mas aunque la cadena sea mas corta, el codigo enseguida:
Código PHP:
/*Suponiendo que tu cadena es una variable llamada $cadena*/
if(strlen($cadena) > 20){
   
$cadena substr($cadena,0,20)."...";

Asi de facil :)

Saludos
  #3 (permalink)  
Antiguo 02/01/2009, 15:16
 
Fecha de Ingreso: agosto-2008
Ubicación: Buenos Aires
Mensajes: 247
Antigüedad: 15 años, 8 meses
Puntos: 6
Respuesta: como poner limitacion de string para "leer mas"

hola, me ganaron de mano mientras escribia... jeje

lo que yo hago, en el ejemplo, que la descripcion no sea mayor a 200 caracteres(strlen).
y, en caso de serlo, la corto a 190, agrego un salto de linea cada 50 (poque en mi caso sino me lo desencuadra) y agrego un link al final...
Código PHP:
<?

if(strlen($descripcion) > 200){
  
$descripcion_corta substr($descripcion0190);
  
$descripcion_corta wordwrap($descripcion_corta,50,"<br>",1);
  
$descripcion_corta .= '...&nbsp;&nbsp;&nbsp;<a class="link" href="?id='.$id.'">Leer mas.</a>';
}
?>
despues hago donde quiera;

Código PHP:
<?

echo $descripcion_corta;

?>
espero que te sirva...

saludos

Última edición por binagol; 02/01/2009 a las 15:21 Razón: me gano de mano gilitos92
  #4 (permalink)  
Antiguo 02/01/2009, 15:27
 
Fecha de Ingreso: agosto-2008
Ubicación: Buenos Aires
Mensajes: 247
Antigüedad: 15 años, 8 meses
Puntos: 6
Respuesta: como poner limitacion de string para "leer mas"

acabo de ver bien el ejemplo que pones vos....

eso que vos queres se hace con javascript no con php....

lo que nosotros no se desplaza cuando haces clic en el link.... es solo un link a donde quieras...


saludos....
  #5 (permalink)  
Antiguo 02/01/2009, 15:30
 
Fecha de Ingreso: diciembre-2008
Mensajes: 70
Antigüedad: 15 años, 4 meses
Puntos: 4
Respuesta: como poner limitacion de string para "leer mas"

O como un extra jeje para orientarnos mas a los objetos jaja seria con una funcion de la sig manera (usando el codigo de binagol):
Código PHP:
function leerMas($descripcion){
if(
strlen($descripcion) > 200){
  
$descripcion_corta substr($descripcion0190);
  
$descripcion_corta wordwrap($descripcion_corta,50,"<br>",1);
  
$descripcion_corta .= '...&nbsp;&nbsp;&nbsp;<a class="link" href="?id='.$id.'">Leer mas.</a>';
  return 
$descripcion_corta;
}

Y luego la llamas y le pasas la variable con tu cadena o le pones una cadena cualquiera
Código PHP:
echo leerMas("Esta es la cadena que me gustaria recortar :)"); 
Saludos

Última edición por gilitos92; 02/01/2009 a las 15:32 Razón: Typo jaja
  #6 (permalink)  
Antiguo 02/01/2009, 15:31
 
Fecha de Ingreso: diciembre-2008
Mensajes: 70
Antigüedad: 15 años, 4 meses
Puntos: 4
Respuesta: como poner limitacion de string para "leer mas"

Cita:
Iniciado por binagol Ver Mensaje
acabo de ver bien el ejemplo que pones vos....

eso que vos queres se hace con javascript no con php....

lo que nosotros no se desplaza cuando haces clic en el link.... es solo un link a donde quieras...


saludos....
La cosa es que el lo que no sabe hacer es la limitacion del string, es decir, lo que se puede hacer con php, ya si lo quiere hacer dinamico (del lado del cliente) pues ya tendria que utilizar el document.getElementById('nombre_del_div').style="d isplay:none"... etcetera.

Saludos
  #7 (permalink)  
Antiguo 02/01/2009, 15:42
 
Fecha de Ingreso: agosto-2008
Ubicación: Buenos Aires
Mensajes: 247
Antigüedad: 15 años, 8 meses
Puntos: 6
Respuesta: como poner limitacion de string para "leer mas"

claro, entiendo lo que vos haces...es lo mismo que yo hice....

lo unico que digo, es que Fierce preguntaba sobre JS....(me di cuenta de ello, cuando entre al link del video que pone de ejemplo... eso esta hecho con js...).

respondiedno la pregunta exacta de Fierce,
tenes que hacerlo con JS....
para ello tenes que poner:


Código HTML:
<script languaje="javascript" type="text/javascript">

function mostrarCapa(id){
	document.getElementById(id).style.display="block";
}

function ocultarCapa(id){
	document.getElementById(id).style.display="none";
}
</script>



<div id="comentariocompleto" style="display:none">
COMENTARIO COMPLETO  
(<a href="javascript:void(0);" onclick="ocultarCapa('comentariocompleto');mostrarCapa('comentarioCorto')">menos</a>)
</div>

<div id="comentarioCorto" style="display:block">COMENTARIO CORTO(
<a href="javascript:void(0);" onclick="ocultarCapa('comentarioCorto');mostrarCapa('comentariocompleto')">m&aacute;s</a>)</div> 


espero que sirva.... saludos

PS algun Admin puede evaluar a que foro pertenece este tema??
  #8 (permalink)  
Antiguo 02/01/2009, 15:57
 
Fecha de Ingreso: diciembre-2008
Mensajes: 70
Antigüedad: 15 años, 4 meses
Puntos: 4
Respuesta: como poner limitacion de string para "leer mas"

Cita:
Iniciado por binagol Ver Mensaje
claro, entiendo lo que vos haces...es lo mismo que yo hice....

lo unico que digo, es que Fierce preguntaba sobre JS....(me di cuenta de ello, cuando entre al link del video que pone de ejemplo... eso esta hecho con js...).

respondiedno la pregunta exacta de Fierce,
tenes que hacerlo con JS....
para ello tenes que poner:


Código HTML:
<script languaje="javascript" type="text/javascript">

function mostrarCapa(id){
    document.getElementById(id).style.display="block";
}

function ocultarCapa(id){
    document.getElementById(id).style.display="none";
}
</script>



<div id="comentariocompleto" style="display:none">
COMENTARIO COMPLETO  
(<a href="javascript:void(0);" onclick="ocultarCapa('comentariocompleto');mostrarCapa('comentarioCorto')">menos</a>)
</div>

<div id="comentarioCorto" style="display:block">COMENTARIO CORTO(
<a href="javascript:void(0);" onclick="ocultarCapa('comentarioCorto');mostrarCapa('comentariocompleto')">m&aacute;s</a>)</div> 

espero que sirva.... saludos

PS algun Admin puede evaluar a que foro pertenece este tema??
Jeje ok ya entendi xD, conrazon yo no vi el video

Saludos
  #9 (permalink)  
Antiguo 02/01/2009, 16:02
 
Fecha de Ingreso: agosto-2008
Ubicación: Buenos Aires
Mensajes: 247
Antigüedad: 15 años, 8 meses
Puntos: 6
Respuesta: como poner limitacion de string para "leer mas"

jeje, me lo imaginaba....

saludos
  #10 (permalink)  
Antiguo 02/01/2009, 16:15
Avatar de Fierce  
Fecha de Ingreso: marzo-2008
Mensajes: 216
Antigüedad: 16 años, 1 mes
Puntos: 3
De acuerdo Respuesta: como poner limitacion de string para "leer mas"

Yo siempre he dicho que los mejores estan en Forosdelweb, son unos Tesos muchas gracias a todos por las respuestas.

Última edición por Fierce; 02/01/2009 a las 16:29
  #11 (permalink)  
Antiguo 02/01/2009, 16:26
 
Fecha de Ingreso: agosto-2008
Ubicación: Buenos Aires
Mensajes: 247
Antigüedad: 15 años, 8 meses
Puntos: 6
Respuesta: como poner limitacion de string para "leer mas"

cualquier cosa, volve a preguntar....

y... si te sirvio la respuesta.... dame un puntito de karma.. para dejar de estrar el -10... jeje

saludos...
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




La zona horaria es GMT -6. Ahora son las 10:13.