Problema de texto al poner un texto muy largo, alguna forma de cortarlo?

Iniciado por XXXXXX, 20 Junio 2010, 15:51 PM

0 Miembros y 1 Visitante están viendo este tema.

XXXXXX

hola, bien acabo de hacer un codigo que me lee la DB de los comentarios, resulta que si por algun caso, un gracioso decide hacer spam, el texto se sale del div, no se corta, que digamos...


hay alguna forma de hacer que se corte el texto si es demasiado largo y pase a otra linea?


saludos y gracias.

PD: si necesitan algo mas de informacion diganme

luiggy2

La solución más fácil que se me ocurre es que limites el espadcio del campo de tu bd, así solo se guardará hasta donde se guarde.

Otra opción es antes de guardarlo (aparte de poner limite al form, por si acaso)) puedes hacer algo así:


Código (php) [Seleccionar]

<?php

$cadena
=$_POST['mensaje'];

if( 
strlen($cadena)<= 9999)
{
//introduces en la bd
}
else
{
echo 
"lo siento, tu mensaje es demasiado largo";
};

?>



Saludos!
" Las grandes ideas suelen salir la mayoría de veces de grandes estupideces "

XXXXXX

para un texto que fuera así, funcionaria tambien?

ej: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

porque los textos separados, si los salta de linea, pero los largos no salen todos en linea recta y claro, se sale del div, cuanto mas largo, mas sale xD

MinusFour

Esto es más CSS que php, podrías agregar al estilo del DIV



div {
Overflow: hidden;
}



Esto te oculta lo que se salga del contenedor. También puedes poner el overflow como scroll y sale una barrita... pero no estoy muy seguro para lo del salto de linea. Supongo que tiene que ver con margenes y así...

~ Yoya ~

si lo pasas por un formulario usa la función nl2br.... que cambia los salto de lineas \n, por saltos de lineas en html<br>... Yo también tenia ese mismo problema xD...
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.