Página 1 de 1

ezportal: Pasar columna de los 10 más activos a "random"

Publicado: 23 Ene 2009, 15:41
por JAMESS
Hola muchachos, tengo instalado el EzPortal en el foro y agregue una pequeña columna para que muestre los 10 usuarios más activos del foro, entonces en una columna de la derecha me muestra verticalmente los 10 usuarios que más postean (de mayor a menor).

Como puedo hacer para que esa misma columna NO me los ordene, o sea lo que quiero es que me muestre 10 usuarios al azar (random), sin tener en cuenta la cantidad de post que hizo cada usuario, pero que mantenga la estructura a como se vé ahora. Manteniendo su nick y su avatar como figura ordenadamente en la columna, pero 10 al azar distintos cada vez que entro.

acá les paso el archivo pastebin del archivo portal.php justo en la parte que tengo que modificar pero sabria bien que:

http://www.phpbb-es.com/foro/pastebin.p ... =view&s=51



Gracias.URL: http://www.rodanteando.com.ar" onclick="window.open(this.href);return false;
Versión phpBB: phpBB2 (2.0.23)
MODs Instalados: ezportal
Plantilla(s) usada(s): subsilver
Servidor: pago
Actualización desde otra versión: No
Conversión desde otro sistema de foros: No

Re: ezportal: Pasar columna de los 10 más activos a "random"

Publicado: 23 Ene 2009, 15:49
por JAMESS
perdón creo que salió mal el pastebin.

a ver ahora:


//
//start top poster
//

$total_poster = '10'; // total of top poster
$avatar_height = '90'; // the avatar's height

$sql = "SELECT username, user_id, user_posts, user_avatar, user_avatar_type, user_allowavatar
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS . "
ORDER BY user_posts DESC LIMIT $total_poster";
if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}

if ( $row = $db->sql_fetchrow($result) )
{
$i = 0;
do
{
$username = $row['username'];
$user_id = $row['user_id'];
$posts = ( $row['user_posts'] ) ? $row['user_posts'] : 0;
$poster_avatar = '';
if ( $row['user_avatar_type'] && $user_id != ANONYMOUS && $row['user_allowavatar'] )
{
switch( $row['user_avatar_type'] )
{
case USER_AVATAR_UPLOAD:
$poster_avatar = ( $board_config['allow_avatar_upload'] ) ? '<img src="' . $board_config['avatar_path'] . '/' . $row['user_avatar'] . '" alt="" border="0" height="' . $avatar_height . '" />' : '';
break;
case USER_AVATAR_REMOTE:
$poster_avatar = ( $board_config['allow_avatar_remote'] ) ? '<img src="' . $row['user_avatar'] . '" alt="" border="0" height="' . $avatar_height . '" />' : '';
break;
case USER_AVATAR_GALLERY:
$poster_avatar = ( $board_config['allow_avatar_local'] ) ? '<img src="' . $board_config['avatar_gallery_path'] . '/' . $row['user_avatar'] . '" alt="" border="0" height="' . $avatar_height . '" />' : '';
break;
}
}



$template->assign_block_vars('topposter', array(

'USERNAME' => $username,
'POSTS' => $posts,
'AVATAR_IMG' => $poster_avatar,

'U_VIEWPOSTER' => append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id"))
);

$i++;
}
while ( $row = $db->sql_fetchrow($result) );
}

//
//end top poster
//



Gracias.URL: http://www.rodanteando.com.ar" onclick="window.open(this.href);return false;
Versión phpBB: phpBB2 (2.0.23)
MODs Instalados: ezportal
Plantilla(s) usada(s): subsilver
Servidor: pago
Actualización desde otra versión: No
Conversión desde otro sistema de foros: No

Re: ezportal: Pasar columna de los 10 más activos a "random"

Publicado: 24 Ene 2009, 04:17
por JAMESS
en una palabra transformar la columna de los 10 mas activos a: 10 usuarios random, con avatar y todo, tal cual lo muestra el mod original.

Gracias. :ok: