Ver Mensaje Individual
  #47 (permalink)  
Antiguo 04/04/2005, 12:20
Avatar de yoseman
yoseman
 
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 21 años, 1 mes
Puntos: 5
Cita:
Iniciado por daosorio
Estimados colegas:

Yo uso el siguiente código para mostrar los últimos 15 mensajes del foro en una page x, y me funciona bien.

Código PHP:
<?
// phpBB :: MOSTRAR ULTIMOS 15 MENSAJES


$con=mysql_connect("localhost",USER,"");
mysql_select_db("BASEDEDATOS",$con);

// Cantidad de post a mostrar y prefijo de las tablas
$ultimos 15;
$prefijo "TBL_phpbb_";

// Consultas a la base
$result_mensaje=mysql_query("select * from $prefijo"."topics order by topic_id desc limit $ultimos",$con); 
while(
$mostrar_m mysql_fetch_array($result_mensaje)) { 
$topic=$mostrar_m["topic_id"];
$forum_id=$mostrar_m["forum_id"];
$result_foro=mysql_query("select * from $prefijo"."forums where forum_id like $forum_id",$con);
$mostrar_f=mysql_fetch_array($result_foro);
$forum_name $mostrar_f["forum_name"];
mysql_free_result($result_foro);
?>
                      &nbsp;<a href="http://MYSITE/phpBB2/viewtopic.php?t=<?=$topic;?>" target="_blank"><? echo $mostrar_m["topic_title"]; ?></a> en <i><b>
                        <?=$forum_name;?>
                        </b></i></font>&nbsp;<br>
                        <?
}
// Cerramos conexión
mysql_free_result($result_mensaje);
mysql_close($con);
?>

Sin embargo, me gustaría saber cómo le hago para lograr lo siguiente:

1.- Que muestre la fecha en que se posteó (publicó)
Tema - En Carpeta fulana - Fecha

2.- Y que me muestre los temas de una categoría, no de la subcategoría.
Ejemplo:
TECNOLOGÍA
* Software
* Hardware
* Híbrida

Por citar un caso, pero que me muestre todos los temas de tecnología y No los de solo de soft, o hard o híbridad...

Quedando así:

Nuevos discos duros en Hardware - 01/01/2005
Fedora Core 10 en Sofware - 15/05/2006

Espero se pueda.

Gracias y saludos.
He estado trasteando un rato y mas o menos me sale, míralo y contrástalo a ver si te sirve:
Código PHP:
<?
// iniciamos sesión phpBB si el código no está dentro de algún script del foro
// en cuyo caso no haría falta
// definimos la ruta del foro en phpbb_root_path
// si es el directorio del foro no ponemos nada
// si esta por arriba del foro ponemos: directorio_del_foro/
define('IN_PHPBB'true);
$phpbb_root_path 'foro/'//PATH DEL FORO RESPECTO DEL SCRIPT
include($phpbb_root_path 'extension.inc');
include(
$phpbb_root_path 'common.'.$phpEx);
$userdata session_pagestart($user_ipPAGE_INDEX);
init_userprefs($userdata);
global 
$db$board_config;
global 
$HTTP_COOKIE_VARS$HTTP_GET_VARS$SID;
$cookiename $board_config['cookie_name'];
$cookiepath $board_config['cookie_path'];
$cookiedomain $board_config['cookie_domain'];
$cookiesecure $board_config['cookie_secure'];
// determinamos si cookie activada sino propagamos sid por url
   
if ( !(isset($HTTP_COOKIE_VARS[$cookiename '_sid']) || isset($HTTP_COOKIE_VARS[$cookiename '_data'])) )
   {
   
output_add_rewrite_var('sid'$userdata['session_id']);
   }
// fin inicio sesión phpBB
$p $table_prefix
$auth_ary auth(AUTH_READAUTH_LIST_ALL$userdata); 
while ( list(
$auth_forum_id$auth_level) = each($auth_ary) )      
   { 
   if (!
$auth_level['auth_read'] ) 
      {      
      
$auth_view_forums = ($auth_view_forums " p.forum_id<>" $auth_forum_id " and "); 
      
$auth_view_forums1 = ($auth_view_forums1 " forum_id<>" $auth_forum_id " and "); 
      } 
   } 
$auth_view_forums="WHERE " $auth_view_forums
$auth_view_forums1="WHERE " $auth_view_forums1
$busqueda= @mysql_query("SELECT * FROM ".$p."categories"); 
if (!
$busqueda
   { 
   echo (
"Error al seleccionar los elementos de la base de datos. Por favor Inténtelo de nuevo más tarde."); 
   exit(); 
   } 
while (
$row mysql_fetch_assoc($busqueda)) 
   { 
    
$cat[$row['cat_id']]=$row['cat_title'];
   } 
if (!isset(
$_GET['id'])  || !in_array($_GET['id'],array_keys($cat)))     {$_GET['id']=key($cat);} 
?>
Últimas respuestas en la categoría <?=$cat[$_GET['id']]?><br /><br />
<?
$sql 
mysql_query("SELECT po.post_time,p.forum_name,t.topic_time,t.topic_last_post_id,t.topic_title,t.topic_replies,t.topic_id from  " $p "forums p,"$p "topics t,"$p "posts po WHERE t.topic_last_post_id=po.post_id and t.forum_id=p.forum_id and p.cat_id=".$_GET['id']." ORDER BY t.topic_last_post_id DESC,t.topic_time ASC LIMIT 0,5");
while (
$row mysql_fetch_array($sql)) {
$id $row['topic_id'];
$titulo $row['topic_title'];
$respuestas $row['topic_replies'];
$post_id $row['topic_last_post_id'];
$dat=getdate($row['post_time']); 
?>
<a href="<?=$phpbb_root_path?>viewtopic.php?t=<?=$id?>&highlight=#<?=$post_id?>">-<?=$titulo?></a>&nbsp;&nbsp;en <b><?=$row['forum_name']?></b>&nbsp;-&nbsp;<?=$dat["mday"]?>/<?=$dat["mon"]?>/<?=$dat["year"]?> <br />(<?=$respuestas?> Respuestas)<br /><br/>
<?
}
?> <br />
<br>
<form action="<?=$PHP_SELF?>" method="get"> 
<select name="id" value="1" onchange="if(this.options[this.selectedIndex].value != -1) {this.form.submit();}"> 
         <option value="-1">Seleccione la categoria</option> 
         <option value="-1"></option> 
      
<?
foreach ($cat as $key=>$value)
    {
    
$sel = ($key==$_GET['id']) ? " selected=\"selected\"" ""
    
?>
   <option value="<?=$key?><?=$sel?>><?=$value?></option> 
<?}?>
</form>
Ejemplo de cómo quedaría:

http://elotrositio.tuarrobanet.com/top.php

Salu2 ;)
__________________
[+]
[+]

Última edición por yoseman; 04/04/2005 a las 12:40