define(´IN_PHPBB´, true);
$phpbb_root_path = ´./´;
include($phpbb_root_path . ´extension.inc´);
include($phpbb_root_path . ´common.´.$phpEx);
//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_VIEWMEMBERS);
init_userprefs($userdata);
//
// End session management
//
$start = ( isset($HTTP_GET_VARS[´start´]) ) ? intval($HTTP_GET_VARS[´start´]) : 0;
if ( isset($HTTP_GET_VARS[´mode´]) || isset($HTTP_POST_VARS[´mode´]) )
{
$mode = ( isset($HTTP_POST_VARS[´mode´]) ) ? htmlspecialchars($HTTP_POST_VARS[´mode´]) : htmlspecialchars($HTTP_GET_VARS[´mode´]);
}
else
{
$mode = ´joined´;
}
if(isset($HTTP_POST_VARS[´order´]))
{
$sort_order = ( $HTTP_POST_VARS[´order´] == ´ASC´) ? ´ASC´ : ´DESC´;
}
else if(isset($HTTP_GET_VARS[´order´]))
{
$sort_order = ( $HTTP_GET_VARS[´order´] == ´ASC´) ? ´ASC´ : ´DESC´;
}
else
{
$sort_order = ´ASC´;
}
//
// Memberlist sorting
//
$mode_types_text = array($lang[´Sort_Joined´], $lang[´Sort_Username´], $lang[´Sort_Location´], $lang[´Sort_Posts´], $lang[´Sort_Email´], $lang[´Sort_Website´], $lang[´Sort_Top_Ten´]);
$mode_types = array(´joindate´, ´username´, ´location´, ´posts´, ´email´, ´website´, ´topten´);
$select_sort_mode = ´<select name="mode">´;
for($i = 0; $i < count($mode_types_text); $i++)
{
$selected = ( $mode == $mode_types[$i] ) ? ´ selected="selected"´ : ´´;
$select_sort_mode . = ´<option value="´ . $mode_types[$i] . ´"´ . $selected . ´>´ . $mode_types_text[$i] . ´</option>´;
}
$select_sort_mode . = ´</select>´;
$select_sort_order = ´<select name="order">´;
if($sort_order == ´ASC´)
{
$select_sort_order . = ´<option value="ASC" selected="selected">´ . $lang[´Sort_Ascending´] . ´</option><option value="DESC">´ . $lang[´Sort_Descending´] . ´</option>´;
}
else
{
$select_sort_order . = ´<option value="ASC">´ . $lang[´Sort_Ascending´] . ´</option><option value="DESC" selected="selected">´ . $lang[´Sort_Descending´] . ´</option>´;
}
$select_sort_order . = ´</select>´;
//
// Generate page
//
$page_title = $lang[´Memberlist´];
include($phpbb_root_path . ´includes/page_header.´.$phpEx);
$template->set_filenames(array(
´body´ => ´memberlist_body.tpl´)
) ;
make_jumpbox(´viewforum.´.$phpEx);
$template->assign_vars(array(
´L_SELECT_SORT_METHOD´ => $lang[´Select_sort_method´],
´L_EMAIL´ => $lang[´Email´],
´L_WEBSITE´ => $lang[´Website´],
´L_FROM´ => $lang[´Location´],
´L_ORDER´ => $lang[´Order´],
´L_SORT´ => $lang[´Sort´],
´L_SUBMIT´ => $lang[´Sort´],
´L_AIM´ => $lang[´AIM´],
´L_YIM´ => $lang[´YIM´],
´L_MSNM´ => $lang[´MSNM´],
´L_ICQ´ => $lang[´ICQ´],
´L_JOINED´ => $lang[´Joined´],
´L_POSTS´ => $lang[´Posts´],
´L_PM´ => $lang[´Private_Message´],
´S_MODE_SELECT´ => $select_sort_mode,
´S_ORDER_SELECT´ => $select_sort_order,
´S_MODE_ACTION´ => append_sid("memberlist.$phpEx"))
) ;
switch( $mode )
{
case ´joined´:
$order_by = " user_regdate $sort_order LIMIT $start, " . $board_config[´topics_per_page´];
break;
case ´username´:
$order_by = " username $sort_order LIMIT $start, " . $board_config[´topics_per_page´];
break;
case ´location´:
$order_by = " user_from $sort_order LIMIT $start, " . $board_config[´topics_per_page´];
break;
case ´posts´:
$order_by = " user_posts $sort_order LIMIT $start, " . $board_config[´topics_per_page´];
break;
case ´email´:
$order_by = " user_email $sort_order LIMIT $start, " . $board_config[´topics_per_page´];
break;
case ´website´:
$order_by = " user_website $sort_order LIMIT $start, " . $board_config[´topics_per_page´];
break;
case ´topten´:
$order_by = " user_posts $sort_order LIMIT 10";
break;
default:
$order_by = " user_regdate $sort_order LIMIT $start, " . $board_config[´topics_per_page´];
break;
}
je vous laisse méditer sur ce script qui provient de phpbb... notez qu´il n´est pas complet. Alors? Dégouté?