Recordad que para pedir soporte alguno, debéis facilitar los datos de soporte oportunos por favor, mirad aquí y leer las Normas generales del foro, esto nos servirá de ayuda para dar el mejor soporte..

Gracias.

La Administración de phpBB España.

Mostrar los Top Posteadores en una página externa

Soporte de MODs para phpBB 3.0.x
Dudas sobre AutoMOD aquí por favor.
Elpingo
Asiduo/a
Mensajes: 184
Registrado: 04 Nov 2009, 21:03

Mostrar los Top Posteadores en una página externa

#1

Mensaje por Elpingo »

URL: http://forum.maktotal.net
Versión phpBB: phpBB3 (3.0.7-PL1)
MODs Instalados: tinypicplugin_phpBB3_v1.0.7, Prime_Links, Ad Management 1.0.8, bbcode_buttons_quickreply, Update_attachment, UMIL_1.0.1-pl1, Highslide-4.1.8-Mod-v4.0.5, phpBB_SEO_Ultimate_SEO_URL_v0.6.2, top_posters_1_0_0a, AJAX_Reg_Checks_100, User Reputation Points 0.3.1 (3.0.6), phpbb3 advanced similar topics, sitemap-1.0.6, Similar Topics 1.0.4
Plantilla(s) usada(s): Buziness Board
Servidor: Linux
Actualización desde otra versión: 3.0.5 > 3.0.6 > 3.0.7 PL-1
Conversión desde otro sistema de foros: No

Hola amigos, tengo instalado el Mod Top Posters y necesito saber como puedo mostrar los Top Posteadores en una pagina externa.

A quien me pueda pasar el codigo o una orientación, muy agradecido.! :ok:

Avatar de Usuario
DaVidU
Ex Staff
Mensajes: 776
Registrado: 08 Oct 2009, 12:24
Edad: 49

Re: Mostrar los Top Posteadores en una página externa

#2

Mensaje por DaVidU »

página externa te refieres a una creada por ti dentro del foro o otro sistema ? podrías darnos el enlace donde quieres ponerlo

la url de tu firma no funciona :nolose:
Datos de mi foro en caso de soporte:
URL: http://coloreatuforo.com
Versión phpBB: phpBB 3.0.8
MODs Instalados: + de 100 MODs
Plantilla(s) usada(s): Prosilver modificada
Servidor: Linux
Actualización desde otra versión: 3.0.1
Conversión desde otro sistema de foros: No

Elpingo
Asiduo/a
Mensajes: 184
Registrado: 04 Nov 2009, 21:03

Re: Mostrar los Top Posteadores en una página externa

#3

Mensaje por Elpingo »

Si Davidu, el sitio esta momentaneamente offline por que ayer decidi cambiar de servidor y hasta tanto se delegue el ns seguirá asi.
Con respecto a la consulta que hice, me refiero a una pagina externa al foro, como por ejemplo, un portal, y de hecho esa es la idea, hacer un portal
y quisiera mostrar las estadisticas del sitio en el portal, como la cantidad de post, usuarios on line, top posteadores, usuarios mejor puntuados, etc..

Si alguien sabe o conoce un sistema de estadisiticas para implementar en un portal, estaria mas que agradecido.

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 37

Re: Mostrar los Top Posteadores en una página externa

#4

Mensaje por Alorse »

y el portal donde estaria?

un ejemplo

tusitio.com/foro/index.php

el portal estaria aquí tusitio.com/foro/portal.php o aquí tusitio.com/portal.php (esto es una pagina externa)

Espero haberme hecho entender, haber si te podemos ayudar de una mejor manera.

Porcierto, si no podemos ver tu foro no te podemos seguir ayudando, avisanos cuando este online nuevamente. :ok:

Elpingo
Asiduo/a
Mensajes: 184
Registrado: 04 Nov 2009, 21:03

Re: Mostrar los Top Posteadores en una página externa

#5

Mensaje por Elpingo »

Gracias Alorse, si efectivamente la pagina externa seria como tu dices, forum.maktotal.net/index.php y phpBB lo tengo en forum.maktotal.net/forum/ entonces la idea es mostrar las estadisticas en el index.php que sería el portal del sitio. :ok:

odenmc
Observador/a
Mensajes: 14
Registrado: 27 Jul 2007, 23:24

Re: Mostrar los Top Posteadores en una página externa

#6

Mensaje por odenmc »

Vaya, es algo bastante interesante en caso de que se pueda implementar, me sumo a la petición de Elpingo

memoadian
Elite
Mensajes: 1572
Registrado: 27 Jun 2009, 13:07
Edad: 38

Re: Mostrar los Top Posteadores en una página externa

#7

Mensaje por memoadian »

Odenmc, se puede hacer, hay mods que lo hacen yo lo tengo en mi web, pero si te interesa puedes buscar, si no lo logras abrir un topic aparte.
Datos de soporte
URL: http://manganimemas.com/foro
Versión phpBB: phpBB3 (3.0.9)
MODs Instalados:
Advertisement management, Jquery quick edit,
Block foro externo, Reimg image resizer,
PhpbbSEO, Multi race ranks,
Auto backup, Multiple ranks,
phpbb-seo dynamic meta tags, breizh ajax checks,
barra de mitch, Imágen campos personalizados,
centrar avatar, full quick reply editor,
ign style colored names, perfil a la izquierda,
nv newspage, phpbb security, prime links,
smilie creator, user ranks progresion bar,
buttons menu, prime notify,

Plantilla(s) usada(s): prosilver
Servidor: Pago
Actualización desde otra versión: si
Conversión desde otro sistema de foros: no
__________________________________________________________________________________________________
Instalo mods
Administrador de manganimemas.
__________________________________________________________________________________________________

Avatar de Usuario
ahh72
Ex Staff
Mensajes: 3871
Registrado: 29 Dic 2008, 17:28
Género:
Edad: 53

Re: Mostrar los Top Posteadores en una página externa

#8

Mensaje por ahh72 »

odenmc escribió:Vaya, es algo bastante interesante en caso de que se pueda implementar, me sumo a la petición de Elpingo
debes de poner tus datos de soporte porque sin ellos no se te brindara ayuda, esta en las normas del foro :lee

saludos

Datos de Soporte:
- URL del Foro: http://www.peruvoley.com/foro
- Hosting donde está alojada: http://www.rogohosting.com
- Versión del foro: 3.3.11
- Estilo: stasis-leak
- Mods Instalados:

Guias de ayuda:
Guia para corregir el copyright en foros phpBB3


odenmc
Observador/a
Mensajes: 14
Registrado: 27 Jul 2007, 23:24

Re: Mostrar los Top Posteadores en una página externa

#9

Mensaje por odenmc »

Creo que me he explicado mal, disculpas

Yo no pido nada, solo espero expectante a que contestéis a la petición de Elpingo que me parece bastante interesante, yo en realidad no quiero nada

De todos modos, gracias por vuestros comentarios, un saludo

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 37

Re: Mostrar los Top Posteadores en una página externa

#10

Mensaje por Alorse »

Claro odenmc, pero a Elpingo no se le respondera hasta que no podamos ver su foro funcionando.

Un saludo.

odenmc
Observador/a
Mensajes: 14
Registrado: 27 Jul 2007, 23:24

Re: Mostrar los Top Posteadores en una página externa

#11

Mensaje por odenmc »

Alorse escribió:Claro odenmc, pero a Elpingo no se le respondera hasta que no podamos ver su foro funcionando.

Un saludo.
Cierto, mis disculpas por haberos hecho perder el tiempo y no haber aportado nada al tema

Miraré en los foros oficiales a ver si veo algo y en caso de encontrar algo que pueda dar luz sobre el tema lo pondré aquí por si puede ayudaros ( Al menos hasta que elPingo reanude su foro de nuevo )

Un saludo y perdonad

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 37

Re: Mostrar los Top Posteadores en una página externa

#12

Mensaje por Alorse »

El foro ya funciona, así que expplico como se hace...

Crea un archivo nuevo .php y agregale esto:

Código: Seleccionar todo

<?php
    define('IN_PHPBB', true);
    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './foro/';
    $phpEx = substr(strrchr(__FILE__, '.'), 1);
    include($phpbb_root_path . 'common.' . $phpEx);
    
    // Start session management
    $user->session_begin();
    $auth->acl($user->data);
    $user->setup('');

//Generate top poster list if enabled

    global $cache, $config, $db, $user, $auth;
    global $template;
        
    $spammer_user_ids = array(); 
    $spammer_user_ids = ($config['top_posters_excl_ids']) ? explode(",", $config['top_posters_excl_ids']) : array();
    
    $acl_am = array();
       
    if ($config['top_posters_excl_adm'])
    {
       $acl_am[] = 'a_';
    }
    if ($config['top_posters_excl_mod'])
    {
        $acl_am[] = 'm_';
    }

    $exclude_ids_ary = array();
    $top_posters_list = $top_posters_hours_list = '';
     

    if (sizeof($acl_am))
    {
        $user_ary = $auth->acl_get_list(false, $acl_am, false);

        foreach ($user_ary as $forum_id => $forum_ary)
        {
            foreach ($forum_ary as $auth_option => $id_ary)
            {
                $exclude_ids_ary = array_merge($exclude_ids_ary, $id_ary);
            }
        }
    }
    $exclude_ids_ary = array_merge($exclude_ids_ary, $spammer_user_ids);
    $exclude_ids_ary = array_unique($exclude_ids_ary);

    $exclude_ids_ary_hours = ($config['top_posters_excl_hours']) ? $exclude_ids_ary : $spammer_user_ids;
    
    $excluded_ids = (sizeof($exclude_ids_ary)) ? 'AND ' . $db->sql_in_set('user_id', $exclude_ids_ary, true) : '';
    $excluded_ids_hours = (sizeof($exclude_ids_ary_hours)) ? 'AND ' . $db->sql_in_set('user_id', $exclude_ids_ary_hours, true) : '';
    

    $top_posters = $config['amount_top_posters'];

    // count top x posters
    $sql = "SELECT username, user_id, user_type, user_colour, user_posts
            FROM " . USERS_TABLE . "
            WHERE user_id <> " . (int) ANONYMOUS . "
                AND user_type <> " . (int) USER_IGNORE . "
                    AND user_posts > 0
                        " . $excluded_ids . "
            ORDER BY user_posts DESC";
    $result = $db->sql_query_limit($sql, $top_posters, 0, 0);
    //delete the above line and uncomment below line if you want to cache the query for an hour
    //$result = $db->sql_query_limit($sql, $top_posters, 0, 3600);

    while ($row = $db->sql_fetchrow($result))
    {
        $top_posters_list  .= (($top_posters_list  != '') ? ', ' : '') . get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']) . '&nbsp;('. $row['user_posts'] .')';
    }
    $db->sql_freeresult($result);


    // count x top posters in the last x hours
    if ( $config['top_posters_hours'] )
    {
        $xhours = ( $config['top_posters_hours'] * 3600 );
        
        $time = time() - $xhours;
        $sql = "SELECT u.user_id, u.username, u.user_type, u.user_colour, COUNT(p.post_id) as total_posts
                FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p 
                WHERE p.post_time > " . (int) $time . "
                    AND u.user_id = p.poster_id
                        AND u.user_id <> " . (int) ANONYMOUS . "
                            AND u.user_type <> " . (int) USER_IGNORE . "
                                " . $excluded_ids_hours . "
                GROUP BY u.user_id 
                ORDER BY total_posts DESC";
            $result = $db->sql_query_limit($sql, $top_posters, 0, 0);

        while ($row = $db->sql_fetchrow($result))
        {
            $top_posters_hours_list  .= (($top_posters_hours_list  != '') ? ', ' : '') . '<em>' . get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']) . '&nbsp;('. $row['total_posts'] .')</em>';
            
        }
        $db->sql_freeresult($result);
    }
    
    $top_posters_hours = ( $config['top_posters_hours'] == 1 ) ? $user->lang['TOP_POSTERS_HOUR'] : sprintf($user->lang['TOP_POSTERS_HOURS'],$config['top_posters_hours']);

    echo '<strong>Top Posteadores</strong><br />',$top_posters_list,'<br />';
    echo 'En las ultimas ',$config['top_posters_hours'],' horas<br />',$top_posters_hours_list;

?>

Es todo, con eso ya se vera el Top de posteadores en el esta pagina externa.

Recuerda cambiar en la linea: $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './foro/'; donde dice './foro/', por la ruta de tu foro.

Todo esto es casi un copy & paste del archivo original del MOD para que no creanq ue yo lo hice jeje :lol:

Acá dejo el ejemplo funcionando, no aparece nada en las última 24 horas ya que en ese foro nadie a escrito en tales horas.

Un saludo, ya me avisaras como funciona.

Elpingo
Asiduo/a
Mensajes: 184
Registrado: 04 Nov 2009, 21:03

Re: Mostrar los Top Posteadores en una página externa

#13

Mensaje por Elpingo »

Ya tengo el sitio On Line, espero vuestra ayuda
memoadian escribió:Odenmc, se puede hacer, hay mods que lo hacen yo lo tengo en mi web, pero si te interesa puedes buscar, si no lo logras abrir un topic aparte.
Si hay algun Mod que me permita mostrar las estadisticas del sitio en una página externa, pues por favor dime cual es...! :ok:

Gracias y saludos!!!

Elpingo
Asiduo/a
Mensajes: 184
Registrado: 04 Nov 2009, 21:03

Re: Mostrar los Top Posteadores en una página externa

#14

Mensaje por Elpingo »

Gracias Maestro... Alorse!!! :bravo:
Es mucho joder si te pido la consulta a la base de datos para agregarle la cantidad total de post , los ultimos mensajes o respuestas, etc...?

Gracias nuevamente...!

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 37

Re: Mostrar los Top Posteadores en una página externa

#15

Mensaje por Alorse »

Espera le trabajo un poquito, que ahi ya toca es sacar las consultas de otro archivo...

Cerrado

Volver a “Soporte de MODs”