Foros del Web » Programando para Internet » PHP »

Problemas con últimos Posts en web, ayuda!.

Estas en el tema de Problemas con últimos Posts en web, ayuda!. en el foro de PHP en Foros del Web. Hola amigos, soy nuevo en esto de PHP. Tengo una página con un foro phpbb2 y en el home tengo un script con los "ultimos ...
  #1 (permalink)  
Antiguo 30/10/2010, 09:45
 
Fecha de Ingreso: junio-2008
Mensajes: 6
Antigüedad: 15 años, 10 meses
Puntos: 0
Problemas con últimos Posts en web, ayuda!.

Hola amigos, soy nuevo en esto de PHP.
Tengo una página con un foro phpbb2 y en el home tengo un script con los "ultimos topics", este muestra el titulo del topic, donde está ubicado y el autor.
Funciona bien, solo que me gustaría agregarle que muestre el numero de páginas respondidas (cuando lleba más de 1) y de la opcion de ir las ultimas.
algo así:

"[ Ir a página: 1 ... 5, 6, 7 ]"

un ejemplo:



El codigo es este:

Código:
<?php 
 
// &Uacute;ltimos mensajes publicados en foros phpBB2. 
// Creado por XeRGiO y modificado por Defero.tk (con la ayuda de Ferny) para que muestre los &uacute;ltimos temas de un subforo en concreto
// www.xergio.net
// 
// Edita lo que viene a continuaci&oacute;n. Cambia solo lo que hay entre comillas "": 
 
//$directorio = "."; //Carpeta donde esta situadoel foro.
$directorio = "./foro"; //Carpeta donde esta situadoel foro.  
$mostrar = "9"; //N&uacute;mero de mensajes a mostrar. (menos 1)
$caracteres = "150000"; //Caracteres que se mostrar&aacute;n de cada l&iacute;nea. 
 
// Lo que viene ahora no lo toques para nada!!! a no ser que sepas de qu&eacute; va el tema... 
 
include("$directorio/config.php"); 
$table_prefix = 'phpbb_';
$total="";

//$conexion = mysql_connect("localhost", "root", "root"); 
//mysql_select_db("xxxx", $conexion);
$conexion = mysql_connect("localhost", "xxxxxxx", "xxxxxxx"); 
mysql_select_db("xxx_phpb", $conexion);

$no_mostrar = "0"; // Los ids de los foros que no deseas mostrar
//$consulta =  "select * from " .$table_prefix. "posts order by post_time desc";

$consulta = "
SELECT t.topic_title, t.topic_id, t.forum_id, p2.post_time, p2.poster_id, p2.post_id
FROM phpbb_posts p, phpbb_topics t, phpbb_posts p2 
WHERE p.post_id = t.topic_first_post_id
AND p2.post_id = t.topic_last_post_id
AND t.topic_moved_id = 0
ORDER BY t.topic_last_post_id DESC
LIMIT 10  
"; 

$result = mysql_query($consulta); 

 
while ($row = mysql_fetch_array($result)) { 
    if ($i <= $mostrar) { 
        $consulta1 = "select * from ".$table_prefix."forums where forum_id='$row[forum_id]'";  
        $resultado1 = mysql_query($consulta1); 
        $datosf = mysql_fetch_array($resultado1); 
        $consulta2 = "select * from ".$table_prefix."users where user_id='$row[poster_id]'"; 
        $resultado2 = mysql_query($consulta2); 
        $datosu = mysql_fetch_array($resultado2); 
        $consulta3 = "select * from ".$table_prefix."topics where topic_id='$row[topic_id]'"; 
        $resultado3 = mysql_query($consulta3); 
        $datost = mysql_fetch_array($resultado3); 

        $datost[topic_total] = $datost[topic_title];
        if (strlen($datost[topic_title]) > $caracteres) { 
            $datost[topic_title] = substr($datost[topic_title],0,20)."..."; 
        } 

        //Importante: no dar saltos de linea en la siguiente linea para que el javascript funcione correctamente
        $total.="&nbsp;<font size=\"1\" face=\"arial\"><a href=\"$directorio/viewtopic.php?t=$row[topic_id]#$row[post_id]\" title=\"$datost[topic_total]\"><font color=\"#FFFFFF\">$datost[topic_title]</font></a><br>&nbsp;En: <a href=\"$directorio/viewforum.php?f=$datosf[forum_id]\"><font color=\"#999999\">$datosf[forum_name]</font></a><br>&nbsp;Por: <b><font color=\"#666666\">$datosu[username]</font></b></font><hr noshade size=\"1\" color=\"#000000\">"; 
        $i++; 
    }     
} 

mysql_free_result($result); 
mysql_close($conexion);
?>
Muchas Gracias por su ayuda!.

Última edición por Construccid; 30/10/2010 a las 09:52

Etiquetas: post
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:53.