¡Lo tengo, lo tengo! Basta con poner esto:
Código PHP:
{
$datosy[post_text] = preg_replace("(\[.+?\])is",'',$datosy[post_text]);
}
Antes de esto:
Código PHP:
{
$datosy[post_text] = substr($datosy[post_text],0,150)."...";
}
Le estoy pillando el gusto a esto del PHP... todavía no tengo ni idea, pero divertido es, doy fe de ello.
Para los que andan perdidos, el código definitivo para poner los últimos temas y que al pasar el ratón por encima del mismo muestre parte del texto del primer mensaje es éste:
Código PHP:
<?
// Últimos mensajes publicados en foros phpBB2.
// Creado por XeRGiO y modificado por Defero.tk (con la ayuda de Ferny) para que muestre los últimos temas de un subforo en concreto
// www.xergio.net
//
// Edita lo que viene a continuación. Cambia solo lo que hay entre comillas "":
$directorio = "./forum"; //Carpeta donde esta situadoel foro.
$mostrar = "2"; //Número de mensajes a mostrar. (menos 1)
// $caracteres = "150"; //Caracteres que se mostrarán de cada línea.
// Lo que viene ahora no lo toques para nada!!! a no ser que sepas de qué va el tema...
include("$directorio/config.php");
$conexion = mysql_connect($dbhost,$dbuser,$dbpasswd);
mysql_select_db($dbname,$conexion);
$consulta = "select * from ".$table_prefix. "topics WHERE forum_id='8' order by topic_id desc" ;
$resultado = mysql_query($consulta);
$i = 0;
while ($rows = mysql_fetch_array($resultado)) {
if ($i <= $mostrar) {
// Añadido por Defero.tk para sacar los datos del mensaje
$consulta4 = "select * from ".$table_prefix."posts where post_id='$rows[topic_first_post_id]'";
$resultado4 = mysql_query($consulta4);
$datosx = mysql_fetch_array($resultado4);
// Añadido por Defero.tk para sacar el texto del mensaje
$consulta5 = "select * from ".$table_prefix."posts_text where post_id='$rows[topic_first_post_id]'";
$resultado5 = mysql_query($consulta5);
$datosy = mysql_fetch_array($resultado5);
// if (strlen($datost[topic_title]) > $caracteres) {
// $datost[topic_title] = substr($datost[topic_title],0,20)."...";
// }
// Añadido por Defero.tk para eliminar el bbcode del texto del mensaje
// inspirado en otro código de Xergio http://media.xergio.net/trabajo/81-simple-bbcode
{
$datosy[post_text] = preg_replace("(\[.+?\])is",'',$datosy[post_text]);
}
// Acorta el texto de los mensajes hasta 150 caracteres
{
$datosy[post_text] = substr($datosy[post_text],0,150)."...";
}
echo "<li class=\"timos\"><a href=\"$directorio/viewtopic.php?t=$rows[topic_id]\" title=\"$datosy[post_text]\">$rows[topic_title]</a></li>";
$i++;
}
}
mysql_free_result($resultado);
mysql_close($conexion);
?>