Foros del Web » Programando para Internet » PHP »

separar palabras en campo de texto

Estas en el tema de separar palabras en campo de texto en el foro de PHP en Foros del Web. mi tagboard esta dentro de un <div> y por eso si las palabras son mayores a 25 caracteres se me deforma la tabla. mi codigo ...
  #1 (permalink)  
Antiguo 17/02/2003, 18:25
 
Fecha de Ingreso: febrero-2003
Mensajes: 54
Antigüedad: 14 años, 10 meses
Puntos: 0
separar palabras en campo de texto

mi tagboard esta dentro de un <div> y por eso si las palabras son mayores a 25 caracteres se me deforma la tabla. mi codigo actual para grabar el mensaje en el archivo de texto es :

Código:
<?php
$archivo = "tagboard.txt";
$mensaje = str_replace("<","&lt;",$mensaje); 
$mensaje = str_replace(">","&gt;",$mensaje); 
$mensaje = str_replace("\'","'",$mensaje); 
$mensaje = str_replace('\"',"&quot;",$mensaje); 
$mensaje = str_replace("\\\\","\",$mensaje); 
if (isset($nick)) {
if ($mensaje) {
$txt = file($archivo);
$var = count($txt);
$temp = "$nick{sep}$mensaje";
if ($txt[$var] != $temp) {
$arch = fopen($archivo,"a"); 
$a = fwrite($arch,"$temp\n"); 
echo "• Missatge Guardat<br><b>Nick:</b>$nick<br><b>Mensaje:</b>$mensaje";
fclose($arch); 
}
}
}
?>
creo que deberia ir debajo de los str_replace (para que no pongan html en el tagboard) pero no toy seguro. Gracias
  #2 (permalink)  
Antiguo 17/02/2003, 18:58
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Ese monton de str_replace(9 q usas .. se podria resumir en:

Código PHP:
$mensaje=htmlentities(stripslashes($mensaje)); 
htmlentities() hace justo la parte de tus str_replace de $mensaje = str_replace("<","&lt;",$mensaje); y no solo esos caracteres .. sino alguno mas tambien.

stripslashes() te quita los caracteres de escape q se añaden cuando usas comillas dobles o simples y \ ...

Lo de limitar a X numero de caracteres .. podrias usar:

wordwrap();
http://www.php.net/manual/en/function.wordwrap.php
(revisa los comentarios de los usuarios .. hay alternativas y comentarios q te pueden interesar al respecto).

Eso lo deberias usar antes de presentar la variable q contiene el mensaje y q debes de formatearla a X caracteres por linea .. (en tu caso despues de tus str_replace . o de la linea de codigo q te comenté q hace lo mismo ...

Código PHP:
$mensaje wordwrap$mensaje25"<br>"1); 

Un saludo,
  #3 (permalink)  
Antiguo 17/02/2003, 19:02
 
Fecha de Ingreso: febrero-2003
Mensajes: 54
Antigüedad: 14 años, 10 meses
Puntos: 0
asias!

te kiero cluster!! jaja ya mas ayudao no se kuntas veces al final te dedicaré i web! jeje buenas noches
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




La zona horaria es GMT -6. Ahora son las 16:55.