Foros del Web » Creando para Internet » Sistemas de gestión de contenidos »

¿Cómo mostrar los 5 ultimos posts del foro en el index de mi web?

Estas en el tema de ¿Cómo mostrar los 5 ultimos posts del foro en el index de mi web? en el foro de Sistemas de gestión de contenidos en Foros del Web. ahora no se lo que ise perooo me sale esto Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in /home/tampico/public_html/phpbb2/db/mysql4.php on line 330 ...

  #31 (permalink)  
Antiguo 20/03/2005, 17:41
 
Fecha de Ingreso: marzo-2005
Mensajes: 2
Antigüedad: 19 años, 8 meses
Puntos: 0
ahora no se lo que ise perooo me sale esto
Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in /home/tampico/public_html/phpbb2/db/mysql4.php on line 330

Warning: mysql_errno(): supplied argument is not a valid MySQL-Link resource in /home/tampico/public_html/phpbb2/db/mysql4.php on line 331
phpBB : Critical Error

Could not connect to the database
  #32 (permalink)  
Antiguo 23/03/2005, 07:06
 
Fecha de Ingreso: marzo-2005
Mensajes: 65
Antigüedad: 19 años, 8 meses
Puntos: 0
Bien yoseman, lo que es el script me funciona, es decir, comprueba los foros y lleva hasta ellos (antes no lo hacía).

Pero me sale un mensaje de error de los headers, concretamente este:
Código:
Warning: Cannot modify header information - headers already sent by (output started at /data/members/free/tripod/es/e/n/o/enoyx/htdocs/index2.php:9) in /data/members/free/tripod/es/e/n/o/enoyx/htdocs/PHPbb/phpBB2/includes/sessions.php on line 305

Warning: Cannot modify header information - headers already sent by (output started at /data/members/free/tripod/es/e/n/o/enoyx/htdocs/index2.php:9) in /data/members/free/tripod/es/e/n/o/enoyx/htdocs/PHPbb/phpBB2/includes/sessions.php on line 306
Qué pasa? Lo tengo "encerrado" en una tabla, puede ser eso? Porque creo que lo que hace esa parte es modificar los bordes y eso para que sean iguales que los de lforo no?
  #33 (permalink)  
Antiguo 28/03/2005, 10:56
Avatar de daosorio  
Fecha de Ingreso: mayo-2002
Ubicación: Veracruz
Mensajes: 235
Antigüedad: 22 años, 6 meses
Puntos: 3
MindPaniC:

Me gustaría saber cómo le hago para que me muestre solo los temas de una categoría, ejemplo: Tecnologia.

Espero se pueda.
Muchas gracias
__________________
Mi Blog: www.daosorio.com
  #34 (permalink)  
Antiguo 30/03/2005, 13:40
 
Fecha de Ingreso: marzo-2005
Mensajes: 65
Antigüedad: 19 años, 8 meses
Puntos: 0
Solucionado, al aplicar el script de login, también se ha ido ese problema. Había que hacer lo de los búffers. GRACIAS yoseman
  #35 (permalink)  
Antiguo 02/04/2005, 11:34
 
Fecha de Ingreso: enero-2005
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
ayuda

HOla...observé detenidamente...realizé todo cmo dices...pero me pasa igual..y me da este resultado:

-$titulo
($respuestas Respuestas)

"; } ?>


soy novata en esto...me puedes ayudar???

tengo duda bien q hay q modificar en el scrip

me ayudas???

gracias
  #36 (permalink)  
Antiguo 03/04/2005, 08:44
 
Fecha de Ingreso: febrero-2005
Mensajes: 13
Antigüedad: 19 años, 9 meses
Puntos: 0
¿y todos estos scripts como se añaden al foro? perdonar mi ignorancia ¿se añade a algún archivo .php del foro o se crea un archivo nuevo? no sé no sé una ayudita por favor.

Un saludo
  #37 (permalink)  
Antiguo 03/04/2005, 09:42
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 11 meses
Puntos: 5
Este pequeño script que en un principio era de Mindpanic y luego yo le sugería una modificación para que funcionase con la sesión de phpBB de forma que el usuario conectado sólo pudiese ver los ultimos mensajes de aquellos foros a los que tiene acceso, lo que hace es eso mostrar los 5 últimos topicos dónde se ha posteado en el foro.

En un principio Mindpanic lo quería creo para poder poner en su web los 5 últimos posts del foro, lo único que hay que hacer es guardarlo como un script cualquiera y ya está. Con incluirlo en tu portal o en tu index ya saldría, eso si, teniendo cuidado de que antes de este código no se mande nada al navegado(ningun tag ni palabra ni espacio en blanco, NADA) fuera de php. Y bueno simplemente se trata de configurar la variable $phpbb_root_path con la dirección de tu foro y ya está. Pero tambien se podría poner en el foro, por ejemplo en el índice, si es ahí donde lo quieres poner dilo y enseguida te decimos como hacerlo...
Aunque básicamente sería colocar despues de la linea del index.php:
Código PHP:
    include($phpbb_root_path 'includes/page_header.'.$phpEx); 
Un include a tu script:
Código PHP:
    include($phpbb_root_path 'mi_script.'.$phpEx); 
Teniendo en cuenta además que dado que desde index.php ya se inició sesión hemos de borrar de nuestro script las lineas que inician sesión porque sino daría tremendo error, o sea borrar esto:
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
Luego ya se trataría de maquillarlo un poco para que no quede muy feo en el índice de nuestro foro, con aplicarle el estilo de la plantilla que tengamos y ponerlo en una tablilla ya está :)

Y respecto del problema de escorpiana, mejor pon tú código porque yo acabo de probarlo y me funciona correctamente

Salu2 ;)
__________________
[+]
[+]

Última edición por yoseman; 03/04/2005 a las 09:50
  #38 (permalink)  
Antiguo 03/04/2005, 10:57
 
Fecha de Ingreso: marzo-2005
Mensajes: 65
Antigüedad: 19 años, 8 meses
Puntos: 0
Lo que le pasa a Escorpiana (creo) es que le falta el "<?" inicial.
Pone el ?> de cierre pero no el <? de apertura.

Deporterey, puedes hacerlo de las dos formas, sólo que si lo metes en un archivo a parte, ahorrarás espacio y no tendrás que copairlo en todoas las páginas. Bastaría con:

Código PHP:
<? 
include ("login.php")
?>
Donde login.php es tu archivo del script. Respeta las comillas.

Salu2

PD: Podéis ver como queda mi script en http://www.enoyx.tk
  #39 (permalink)  
Antiguo 03/04/2005, 17:08
 
Fecha de Ingreso: febrero-2005
Mensajes: 13
Antigüedad: 19 años, 9 meses
Puntos: 0
Gracias yoseman y eNoyx, efectivamente lo quiero incluir en el index. He hecho las modificaciones que ha sugerido yoseman y funciona perfectamente, pero no sé como adaptarlo al estilo de mi foro e incluirlo en una tabla, porque me sale con una letra muy grande y por fuera.

Saludos
  #40 (permalink)  
Antiguo 03/04/2005, 18:51
 
Fecha de Ingreso: enero-2005
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
Cita:
Iniciado por eNoyx
Lo que le pasa a Escorpiana (creo) es que le falta el "<?" inicial.
Pone el ?> de cierre pero no el <? de apertura.

Deporterey, puedes hacerlo de las dos formas, sólo que si lo metes en un archivo a parte, ahorrarás espacio y no tendrás que copairlo en todoas las páginas. Bastaría con:

Código PHP:
<? 
include ("login.php")
?>
Donde login.php es tu archivo del script. Respeta las comillas.

Salu2

PD: Podéis ver como queda mi script en http://www.enoyx.tk
nop...

primero gracias por la ayuda...

mirá...te copio como lo hice???

<?php

$conexion = mysql_connect("localhost","ACA PUSE ENTRE COMILLAS MI NOMBRE DE ADMIN","ACA PUSE ENTRE COMILLAS MI CLAVE DE ADMIN");
mysql_select_db("ACA PUSE ENTRE COMILLAS EL NOMBRE DE LA BASE DE DATOS", $conexion) OR die("No se puede establecer la conexión a MySQL");
$sql = mysql_query("SELECT * FROM phpbb_topics ORDER BY topic_last_post_id DESC LIMIT 0,5") or die (mysql_error());
while ($row = mysql_fetch_array($sql)) {
$id = "$row[topic_id]";
$titulo = "$row[topic_title]";
$respuestas = "$row[topic_replies]";
echo"<a href='http://www.escorpiana-cba.com.ar/foro/viewtopic.php?t=$id'>-$titulo</a><br />($respuestas Respuestas)<br /><br

/>";
}
?>


Te destaque con mayúsculas como puse los datos y al final..puse mi dirección del foro

q esta mal

donde va:

$conexion = mysql_connect("localhost","aca Q VA??","ACA Q VA??");

esa es mi duda..si va entre comillas..si es MI NOMBRE DE USUARIO..Y CONTRASEÑA...o no se

ya se...q talvez..sea una pavada...pero no lo se por eso solicito su colaboracion..desde ya..muchassssss graciasssssssss
  #41 (permalink)  
Antiguo 04/04/2005, 09:33
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 11 meses
Puntos: 5
Prueba con este código, que utiliza la conexión a la base de datos mediante phpBB:

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

$sql mysql_query("SELECT * FROM phpbb_topics ORDER BY topic_last_post_id DESC LIMIT 0,5");
while (
$row mysql_fetch_array($sql)) {
$id "$row[topic_id]";
$titulo "$row[topic_title]";
$respuestas "$row[topic_replies]";?>
<a href="<?=$phpbb_root_path?>viewtopic.php?t=<?=$id?>">-<?=$titulo?></a><br />(<?=$respuestas?> Respuestas)<br /><br/>
<?
}
?>
A ver si hay suerte

Salu2 ;)
__________________
[+]
[+]
  #42 (permalink)  
Antiguo 04/04/2005, 09:35
 
Fecha de Ingreso: marzo-2005
Mensajes: 65
Antigüedad: 19 años, 8 meses
Puntos: 0
Has puesto lo q menciona yoseman en su último post?

Cópialo tal cual.
  #43 (permalink)  
Antiguo 04/04/2005, 09:39
 
Fecha de Ingreso: enero-2005
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
GRACIASSS CHICOS

Ahora estoy en el trabajo...obvio q no puedo...

pero en casa..lo hago y les comento
  #44 (permalink)  
Antiguo 04/04/2005, 09:50
 
Fecha de Ingreso: marzo-2005
Mensajes: 65
Antigüedad: 19 años, 8 meses
Puntos: 0
Bueno aquí te pongo el script de yoseman, señalando lo que tienes que cambiar:

<?
// 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 = 'el directorio de tu foro'; //PATH DEL FORO RESPECTO DEL SCRIPT
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_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
//
$auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $userdata);
while ( list($auth_forum_id, $auth_level) = each($auth_ary) )
{
if (!$auth_level['auth_read'] )
{
$auth_view_forums = ($auth_view_forums . " forum_id<>" . $auth_forum_id . " and ");
}
}
$auth_view_forums=($auth_view_forums=="") ? "" : ("WHERE " . $auth_view_forums ."1=1");
$sql = mysql_query("SELECT * FROM phpbb_topics ". $auth_view_forums." ORDER BY topic_last_post_id DESC LIMIT 0,5");
while ($row = mysql_fetch_array($sql)) {
$id = "$row[topic_id]";
$titulo = "$row[topic_title]";
$respuestas = "$row[topic_replies]";?>
<a href="http://tudominio/directorio de tu foro/viewtopic.php?t=<?=$id?>&sid=<?=$userdata['session_id']?>">&nbsp;+&nbsp;<?=$titulo?></a><br />(<?=$respuestas?> Respuestas)<br /><br /><?}?>
  #45 (permalink)  
Antiguo 04/04/2005, 10:33
Avatar de daosorio  
Fecha de Ingreso: mayo-2002
Ubicación: Veracruz
Mensajes: 235
Antigüedad: 22 años, 6 meses
Puntos: 3
Mejoras al código

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.
__________________
Mi Blog: www.daosorio.com
  #46 (permalink)  
Antiguo 04/04/2005, 10:45
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 11 meses
Puntos: 5
Pongo un pequeño añadido para que linke al último mensaje de cada hilo, es a partir de
Código PHP:
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'];
?>
<a href="<?=$phpbb_root_path?>viewtopic.php?t=<?=$id?>&highlight=#<?=$post_id?>">-<?=$titulo?></a><br />(<?=$respuestas?> Respuestas)<br /><br/>
<?
}
?>
Por si alguién lo quiere así.
__________________
[+]
[+]
  #47 (permalink)  
Antiguo 04/04/2005, 12:20
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 11 meses
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
  #48 (permalink)  
Antiguo 04/04/2005, 12:36
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 11 meses
Puntos: 5
Un pequeño añadido, si quieres que no se vean los mensajes a los que el usuario no puede acceder cambia la última query a por esta:
Código PHP:
$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 ".$auth_view_forums." 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"); 
Lo que si que se mostrará es la categoría...

Y por último, si no quieres que aparezca el formulario de abajo para navegar borra todo a partir de la etiqueta html <form ...> y entonces después de la línea:
Código PHP:
if (!isset($_GET['id'])  || !in_array($_GET['id'],array_keys($cat)))     {$_GET['id']=key($cat);} 
Asigna a $_GET['id'] el identificador númerico de la categoria que deseas mostrar y ya está. O sea pones detrás de esta linea:
Código PHP:
$_GET['id']=5;  //siendo 5 el identificador de la categoria que desees mostrar 
Supongo que más o menos está claro, a ver si te sirve...

Salu2 ;)
__________________
[+]
[+]

Última edición por yoseman; 04/04/2005 a las 12:39
  #49 (permalink)  
Antiguo 04/04/2005, 16:08
 
Fecha de Ingreso: febrero-2005
Mensajes: 13
Antigüedad: 19 años, 9 meses
Puntos: 0
Cita:
Iniciado por deporterey
¿y todos estos scripts como se añaden al foro? perdonar mi ignorancia ¿se añade a algún archivo .php del foro o se crea un archivo nuevo? no sé no sé una ayudita por favor.

Un saludo

repito el post por si se os ha pasado :(

Saludos
  #50 (permalink)  
Antiguo 04/04/2005, 17:02
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 11 meses
Puntos: 5
Estos scripts en un principio sirven para desde la web poder mostrar esos datos del foro, simplemente se trata de configurar en la variable $phpbb_root_path el directorio del foro. Si tu foro está en el directorio foro, pues pones en la linea:

Código PHP:
$phpbb_root_path 'foro/'//PATH DEL FORO RESPECTO DEL SCRIPT 
Pero si lo quieres poner en el foro mismo ya sería distinto.

Depende de lo que quieras...

Salu2 ;)
__________________
[+]
[+]
  #51 (permalink)  
Antiguo 04/04/2005, 17:09
 
Fecha de Ingreso: febrero-2005
Mensajes: 13
Antigüedad: 19 años, 9 meses
Puntos: 0
yoseman, te he escrito en tomatoma, allí soy heroes ;)

Un saludo
  #52 (permalink)  
Antiguo 04/04/2005, 17:23
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 11 meses
Puntos: 5
Bien, dejo la respuestas aqui tambien :D

lo que tienes que hacer es guardar un fichero con el contenido siguiente(ya le he dado formato tipo phpBB) en la ruta del foro, por ejemplo llamándolo ultimos.php:
Código:
<? 
// ################################################################################## 
//                      ULTIMOS MENSAJES ENVIADOS A UN FORO 
// ################################################################################## 
define('IN_PHPBB', true); 
$phpbb_root_path = './'; //PATH DEL FORO RESPECTO DEL SCRIPT 
$p = $table_prefix; 
?>
<table width="100%" cellpadding="3" cellspacing="1" border="0" class="forumline">

	<tr>
	  <td class="catHead" height="28"><a name="login"></a><span class="cattitle">Ultimos mensajes</span></td>
	</tr>
<tr>
<?
$auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $userdata);
while ( list($auth_forum_id, $auth_level) = each($auth_ary) )
{
if (!$auth_level['auth_read'] )
{
$auth_view_forums = ($auth_view_forums . " forum_id<>" . $auth_forum_id . " and ");
}
}
$auth_view_forums=($auth_view_forums=="") ? "" : ("WHERE " . $auth_view_forums ."1=1");
$sql = mysql_query("SELECT * FROM phpbb_topics ". $auth_view_forums." ORDER BY topic_last_post_id DESC LIMIT 0,5");
while ($row = mysql_fetch_array($sql)) {
$id = "$row[topic_id]";
$titulo = "$row[topic_title]";
$respuestas = "$row[topic_replies]";?>
<tr>
	  <td class="row1" align="center" valign="middle" height="28"><span class="gensmall">
<a href="http://www.mindpanic.com/foros/viewtopic.php?t=<?=$id?>&sid=<?=$userdata['session_id']?>">&nbsp;+&nbsp;<?=$titulo?></a><br />(<?=$respuestas?> Respuestas)<br /><br />
	</span> </td>
	</tr>
<?}
?>
</table>
luego abres el archivo index.php y localizas casí al final :
Código:
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
y antes añades
Código:
include($phpbb_root_path . './ultimos.'.$phpEx);
Y debería de funcionar...

Salu2 ;)
__________________
[+]
[+]

Última edición por yoseman; 04/04/2005 a las 17:30
  #53 (permalink)  
Antiguo 04/04/2005, 18:47
 
Fecha de Ingreso: enero-2005
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
Cita:
Iniciado por eNoyx
Bueno aquí te pongo el script de yoseman, señalando lo que tienes que cambiar:

<?
// 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 = 'el directorio de tu foro'; //PATH DEL FORO RESPECTO DEL SCRIPT
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_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
//
$auth_ary = auth(AUTH_READ, AUTH_LIST_ALL, $userdata);
while ( list($auth_forum_id, $auth_level) = each($auth_ary) )
{
if (!$auth_level['auth_read'] )
{
$auth_view_forums = ($auth_view_forums . " forum_id<>" . $auth_forum_id . " and ");
}
}
$auth_view_forums=($auth_view_forums=="") ? "" : ("WHERE " . $auth_view_forums ."1=1");
$sql = mysql_query("SELECT * FROM phpbb_topics ". $auth_view_forums." ORDER BY topic_last_post_id DESC LIMIT 0,5");
while ($row = mysql_fetch_array($sql)) {
$id = "$row[topic_id]";
$titulo = "$row[topic_title]";
$respuestas = "$row[topic_replies]";?>
<a href="http://tudominio/directorio de tu foro/viewtopic.php?t=<?=$id?>&sid=<?=$userdata['session_id']?>">&nbsp;+&nbsp;<?=$titulo?></a><br />(<?=$respuestas?> Respuestas)<br /><br /><?}?>
no te rias...pero...

q va en directorio del foro?? la dirección de la página??
o la ruta q donde se encuentra??

yo quiero poner el scrip dentro de mi home, se entiende??
pero ahora...no se q poner alli donde te dije

desde ya gracias..y disculpas las preguntas q seguro son re pavas

GRACIAS A AMBOS!!!!!!!!!!!!!!!!
  #54 (permalink)  
Antiguo 04/04/2005, 19:13
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 11 meses
Puntos: 5
La ruta del foro es en tu caso:

$phpbb_root_path="foro/";

QUe error te da...

Salu2 ;)
__________________
[+]
[+]
  #55 (permalink)  
Antiguo 05/04/2005, 05:58
 
Fecha de Ingreso: enero-2005
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
Cita:
Iniciado por yoseman
La ruta del foro es en tu caso:

$phpbb_root_path="foro/";

QUe error te da...

Salu2 ;)
hola!!

bueno..estoy en el trabajo..pero recuerdo el error

me sale en el lugar donde deje el scrip (dentro del home, página principal)

el signo de pregunta (q es el link al foro PERO AL ingresar entra pero dice ESTE MENSAJE NO EXISTE o algo asi)
y abajo la palabra RESPUESTA, algo asi

>?
Respuesta

lo q sí...yo puse mal...deje en:
$phpbb_root_path="htpp//:www.escorpiana-cba.com.ar/foro";


y por lo q veo esta mal

y después intenté poner directamente las carpetas..luego la base de datos..o sea..cualquiera

en cuanto llegue pongo directamente asi $phpbb_root_path="foro/";


y te aviso...GRACIAS
  #56 (permalink)  
Antiguo 05/04/2005, 09:32
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 11 meses
Puntos: 5
Creo que ya sé lo que pasa, creo que tu tenías una página en html y pusiste el código php sin renombrar la página a extensión php...

¿Me equivoco...?

Tienes que renombrar la página dónde coloques ése script de .htm a .php , porque sino el código que está en php (entre las etiquetas o tags de apertura y cierre php que son <? y ?>) no se interpretarán cómo lo que son.

Una vez que renombras tu páginas a .php entonces si que debería de funcionar, el código que no esté entre <? y ?> se interpreta como html y ya está :)

Salu2 ;) ( a ver si al final se arregla)
__________________
[+]
[+]
  #57 (permalink)  
Antiguo 05/04/2005, 09:45
 
Fecha de Ingreso: enero-2005
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
Cita:
Iniciado por yoseman
Creo que ya sé lo que pasa, creo que tu tenías una página en html y pusiste el código php sin renombrar la página a extensión php...

¿Me equivoco...?

Tienes que renombrar la página dónde coloques ése script de .htm a .php , porque sino el código que está en php (entre las etiquetas o tags de apertura y cierre php que son <? y ?>) no se interpretarán cómo lo que son.

Una vez que renombras tu páginas a .php entonces si que debería de funcionar, el código que no esté entre <? y ?> se interpreta como html y ya está :)

Salu2 ;) ( a ver si al final se arregla)
Siiiiiiiii siempre estuvo en html....

ahora consulta..al renombrarla..no cambia en nada lo otro???

llego en casa y lo pruebo GRACIASS!!!
  #58 (permalink)  
Antiguo 05/04/2005, 18:10
 
Fecha de Ingreso: julio-2004
Mensajes: 58
Antigüedad: 20 años, 4 meses
Puntos: 0
bueno a ver como hago esto, si quiero en una web de phpnuke poner un bloque con las ultimas respuestas del foro , pero el foro es vbulletin
  #59 (permalink)  
Antiguo 05/04/2005, 18:29
 
Fecha de Ingreso: enero-2005
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
Cita:
Iniciado por yoseman
Creo que ya sé lo que pasa, creo que tu tenías una página en html y pusiste el código php sin renombrar la página a extensión php...

¿Me equivoco...?

Tienes que renombrar la página dónde coloques ése script de .htm a .php , porque sino el código que está en php (entre las etiquetas o tags de apertura y cierre php que son <? y ?>) no se interpretarán cómo lo que son.

Una vez que renombras tu páginas a .php entonces si que debería de funcionar, el código que no esté entre <? y ?> se interpreta como html y ya está :)

Salu2 ;) ( a ver si al final se arregla)
nooo

no hay casoooo

la renombre a esa parte nomás y cuando hago la vista previa me dice q si guardo el archivo cualquieraaa

ya no se...q
  #60 (permalink)  
Antiguo 06/04/2005, 10:25
Avatar de daosorio  
Fecha de Ingreso: mayo-2002
Ubicación: Veracruz
Mensajes: 235
Antigüedad: 22 años, 6 meses
Puntos: 3
Yoseman, gracias por las modificaciones y en el ejemplo se ve bien, eso es lo que quiero. Hice lo que indicas, pero me sale el siguiente error, checa por fas


Código:
Hacking attempt
Fatal error: Call to undefined function: session_pagestart() in c:\appserv\www\mysite\carpeta\index.php on line 392
En la línea 392 está lo siguiente:
$userdata = session_pagestart($user_ip, PAGE_INDEX);

Qué hago ahora..?





Cita:
Iniciado por yoseman
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 ;)
__________________
Mi Blog: www.daosorio.com
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 23:40.