Liste des membres - problème de retour à la ligne
Posté : 27 févr. 2006, 12:52
Bonjour, j'ai un probleme avec mon forum
j'ai opté pour une mise en page personnalisée (par l'admin) de la liste des membres, cad qu'au lieu d'avoir un tableau avec login, nbre de post, localisation etc ... je veux juste un tableau avec l'avatar des membres qui pointe vers leur profil.
Jusque là, pas de soucis
le hic est que je n'arrive pas à faire de retour à la ligne au bout de 5 photos
Voici les codes pour memberlist2.php et memberlist_body.tpl:
memberlist2.php:
memberlist_body.tpl:
y-a t'il quelqu'un de balaise et de patient prêt à m'aider svp ??
j'ai opté pour une mise en page personnalisée (par l'admin) de la liste des membres, cad qu'au lieu d'avoir un tableau avec login, nbre de post, localisation etc ... je veux juste un tableau avec l'avatar des membres qui pointe vers leur profil.
Jusque là, pas de soucis
le hic est que je n'arrive pas à faire de retour à la ligne au bout de 5 photos
Voici les codes pour memberlist2.php et memberlist_body.tpl:
memberlist2.php:
Code : Tout sélectionner
<?php
/***************************************************************************
* memberlist.php
* -------------------
* begin : Friday, May 11, 2001
* copyright : (C) 2001 The phpBB Group
* email : [email protected]
*
* $Id: memberlist.php,v 1.36.2.11 2005/09/14 18:14:30 acydburn Exp $
*
***************************************************************************/
/***************************************************************************
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
***************************************************************************/
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['Aix-En-Provence'], $lang['Amsterdam'], $lang['Angers'], $lang['Athènes'], $lang['Avignon'], $lang['Barcelone'], $lang['Berlin'], $lang['Bombay'], $lang['Bordeaux'], $lang['Bruxelles'], $lang['Dijon'], $lang['Genève'], $lang['Grenoble'], $lang['Le Caire'], $lang['Lille'], $lang['Londres'], $lang['Lyon'], $lang['Madrid'], $lang['Marseille'], $lang['Metz'], $lang['Mexico'], $lang['Montpellier'], $lang['Nancy'], $lang['Nantes'], $lang['New York'], $lang['Nice'], $lang['Paris'], $lang['Perpignan'], $lang['Prague'], $lang['Rennes'], $lang['Rome'], $lang['Rouen'], $lang['Sao Paulo'], $lang['Shangai'], $lang['St-Etienne'], $lang['Strasbourg'], $lang['Tokyo'], $lang['Toulouse'], $lang['Varsovie']);
$mode_types = array('Aix-En-Provence', 'Amsterdam', 'Angers', 'Athènes', 'Avignon', 'Barcelone', 'Berlin', 'Bombay', 'Bordeaux', 'Bruxelles', 'Dijon', 'Genève', 'Grenoble', 'Le Caire', 'Lille', 'Londres', 'Lyon', 'Madrid', 'Marseille', 'Metz', 'Mexico', 'Montpellier', 'Nancy', 'Nantes', 'New York', 'Nice', 'Paris', 'Perpignan', 'Prague', 'Rennes', 'Rome', 'Rouen', 'Sao Paulo', 'Shangai', 'St-Etienne', 'Strasbourg', 'Tokyo', 'Toulouse', 'Varsovie');
$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>';
//
// Generate page
//
$page_title = $lang['Memberlist'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'memberlist_body.tpl')
);
$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 'Amsterdam':
$user_from = "Amsterdam";
break;
case 'Paris':
$user_from = "Paris";
break;
case 'Nantes':
$user_from = "Nantes";
break;
case 'Toulouse':
$user_from = "Toulouse";
break;
case 'Lyon':
$user_from = "Lyon";
break;
case 'Nice':
$user_from = "Nice";
break;
case 'Bruxelles':
$user_from = "Bruxelles";
break;
case 'Marseille':
$user_from = "Marseille";
break;
case 'Perpignan':
$user_from = "Perpignan";
break;
case 'Londres':
$user_from = "Londres";
break;
case 'Aix-En-Provence':
$user_from = "Aix-En-Provence";
break;
case 'Rennes':
$user_from = "Rennes";
break;
case 'Barcelone':
$user_from = "Barcelone";
break;
case 'Angers':
$user_from = "Angers";
break;
case 'Rouen':
$user_from = "Rouen";
break;
case 'Rome':
$user_from = "Rome";
break;
case 'Avignon':
$user_from = "Avignon";
break;
case 'St-Etienne':
$user_from = "St-Etienne";
break;
case 'Strasbourg':
$user_from = "Strasbourg";
break;
case 'Bordeaux':
$user_from = "Bordeaux";
break;
case 'Genève':
$user_from = "Genève";
break;
case 'Dijon':
$user_from = "Dijon";
break;
case 'Prague':
$user_from = "Prague";
break;
case 'Madrid':
$user_from = "Madrid";
break;
case 'Grenoble':
$user_from = "Grenoble";
break;
case 'Le Caire':
$user_from = "Le Caire";
break;
case 'Berlin':
$user_from = "Berlin";
break;
case 'Lille':
$user_from = "Lille";
break;
case 'Bombay':
$user_from = "Bombay";
break;
case 'Athènes':
$user_from = "Athènes";
break;
case 'Metz':
$user_from = "Metz";
break;
case 'Shangaï':
$user_from = "Shangaï";
break;
case 'Varsovie':
$user_from = "Varsovie";
break;
case 'Montpellier':
$user_from = "Montpellier";
break;
case 'Tokyo':
$user_from = "Tokyo";
break;
case 'New York':
$user_from = "New York";
break;
case 'Nancy':
$user_from = "Nancy";
break;
case 'Sao Paulo':
$user_from = "Sao Paulo";
break;
case 'Mexico':
$user_from = "Mexico";
break;
default:
$order_by = "user_regdate $sort_order LIMIT $start, " . $board_config['topics_per_page'];
break;
}
$sql = "SELECT username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar
FROM " . USERS_TABLE . "
WHERE user_from = '$user_from'";
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'];
$from = ( !empty($row['user_from']) ) ? $row['user_from'] : ' ';
$joined = create_date($lang['DATE_FORMAT'], $row['user_regdate'], $board_config['board_timezone']);
$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" />' : '';
break;
case USER_AVATAR_REMOTE:
$poster_avatar = ( $board_config['allow_avatar_remote'] ) ? '<img src="' . $row['user_avatar'] . '" alt="" border="0" />' : '';
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" />' : '';
break;
}
}
if ( !empty($row['user_viewemail']) || $userdata['user_level'] == ADMIN )
{
$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $user_id) : 'mailto:' . $row['user_email'];
$email_img = '<a href="' . $email_uri . '"><img src="' . $images['icon_email'] . '" alt="' . $lang['Send_email'] . '" title="' . $lang['Send_email'] . '" border="0" /></a>';
$email = '<a href="' . $email_uri . '">' . $lang['Send_email'] . '</a>';
}
else
{
$email_img = ' ';
$email = ' ';
}
$temp_url = append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id");
$profile_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_profile'] . '" alt="' . $lang['Read_profile'] . '" title="' . $lang['Read_profile'] . '" border="0" /></a>';
$profile = '<a href="' . $temp_url . '">' . $lang['Read_profile'] . '</a>';
$temp_url = append_sid("privmsg.$phpEx?mode=post&" . POST_USERS_URL . "=$user_id");
$pm_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_pm'] . '" alt="' . $lang['Send_private_message'] . '" title="' . $lang['Send_private_message'] . '" border="0" /></a>';
$pm = '<a href="' . $temp_url . '">' . $lang['Send_private_message'] . '</a>';
$www_img = ( $row['user_website'] ) ? '<a href="' . $row['user_website'] . '" target="_userwww"><img src="' . $images['icon_www'] . '" alt="' . $lang['Visit_website'] . '" title="' . $lang['Visit_website'] . '" border="0" /></a>' : '';
$www = ( $row['user_website'] ) ? '<a href="' . $row['user_website'] . '" target="_userwww">' . $lang['Visit_website'] . '</a>' : '';
if ( !empty($row['user_icq']) )
{
$icq_status_img = '<a href="http://wwp.icq.com/' . $row['user_icq'] . '#pager"><img src="http://web.icq.com/whitepages/online?icq=' . $row['user_icq'] . '&img=5" width="18" height="18" border="0" /></a>';
$icq_img = '<a href="http://wwp.icq.com/scripts/search.dll?to=' . $row['user_icq'] . '"><img src="' . $images['icon_icq'] . '" alt="' . $lang['ICQ'] . '" title="' . $lang['ICQ'] . '" border="0" /></a>';
$icq = '<a href="http://wwp.icq.com/scripts/search.dll?to=' . $row['user_icq'] . '">' . $lang['ICQ'] . '</a>';
}
else
{
$icq_status_img = '';
$icq_img = '';
$icq = '';
}
$aim_img = ( $row['user_aim'] ) ? '<a href="aim:goim?screenname=' . $row['user_aim'] . '&message=Hello+Are+you+there?"><img src="' . $images['icon_aim'] . '" alt="' . $lang['AIM'] . '" title="' . $lang['AIM'] . '" border="0" /></a>' : '';
$aim = ( $row['user_aim'] ) ? '<a href="aim:goim?screenname=' . $row['user_aim'] . '&message=Hello+Are+you+there?">' . $lang['AIM'] . '</a>' : '';
$temp_url = append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id");
$msn_img = ( $row['user_msnm'] ) ? '<a href="' . $temp_url . '"><img src="' . $images['icon_msnm'] . '" alt="' . $lang['MSNM'] . '" title="' . $lang['MSNM'] . '" border="0" /></a>' : '';
$msn = ( $row['user_msnm'] ) ? '<a href="' . $temp_url . '">' . $lang['MSNM'] . '</a>' : '';
$yim_img = ( $row['user_yim'] ) ? '<a href="http://edit.yahoo.com/config/send_webmesg?.target=' . $row['user_yim'] . '&.src=pg"><img src="' . $images['icon_yim'] . '" alt="' . $lang['YIM'] . '" title="' . $lang['YIM'] . '" border="0" /></a>' : '';
$yim = ( $row['user_yim'] ) ? '<a href="http://edit.yahoo.com/config/send_webmesg?.target=' . $row['user_yim'] . '&.src=pg">' . $lang['YIM'] . '</a>' : '';
$temp_url = append_sid("search.$phpEx?search_author=" . urlencode($username) . "&showresults=posts");
$search_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_search'] . '" alt="' . $lang['Search_user_posts'] . '" title="' . $lang['Search_user_posts'] . '" border="0" /></a>';
$search = '<a href="' . $temp_url . '">' . $lang['Search_user_posts'] . '</a>';
$row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
$template->assign_block_vars('memberrow', array(
'ROW_NUMBER' => $i + ( $start + 1 ),
'ROW_COLOR' => '#' . $row_color,
'ROW_CLASS' => $row_class,
'USERNAME' => $username,
'FROM' => $from,
'JOINED' => $joined,
'POSTS' => $posts,
'AVATAR_IMG' => $poster_avatar,
'PROFILE_IMG' => $profile_img,
'PROFILE' => $profile,
'SEARCH_IMG' => $search_img,
'SEARCH' => $search,
'PM_IMG' => $pm_img,
'PM' => $pm,
'EMAIL_IMG' => $email_img,
'EMAIL' => $email,
'WWW_IMG' => $www_img,
'WWW' => $www,
'ICQ_STATUS_IMG' => $icq_status_img,
'ICQ_IMG' => $icq_img,
'ICQ' => $icq,
'AIM_IMG' => $aim_img,
'AIM' => $aim,
'MSN_IMG' => $msn_img,
'MSN' => $msn,
'YIM_IMG' => $yim_img,
'YIM' => $yim,
'U_VIEWPROFILE' => append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id"))
);
$i++;
}
while ( $row = $db->sql_fetchrow($result) );
$db->sql_freeresult($result);
}
if ( $mode != 'topten' || $board_config['topics_per_page'] < 10 )
{
$sql = "SELECT count(*) AS total
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Error getting total users', '', __LINE__, __FILE__, $sql);
}
if ( $total = $db->sql_fetchrow($result) )
{
$total_members = $total['total'];
$pagination = generate_pagination("memberlist.$phpEx?mode=$mode&order=$sort_order", $total_members, $board_config['topics_per_page'], $start). ' ';
}
$db->sql_freeresult($result);
}
else
{
$pagination = ' ';
$total_members = 10;
}
$template->assign_vars(array(
'PAGINATION' => $pagination,
'PAGE_NUMBER' => sprintf($lang['Page_of'], ( floor( $start / $board_config['topics_per_page'] ) + 1 ), ceil( $total_members / $board_config['topics_per_page'] )),
'L_GOTO_PAGE' => $lang['Goto_page'])
);
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>Code : Tout sélectionner
<br />
<form method="post" action="{S_MODE_ACTION}">
<table width="95%" cellspacing="2" cellpadding="2" border="0" align="center">
<tr>
<td align="left"><span class="nav"><a href="{U_INDEX}" class="nav">{L_INDEX}</a></span></td>
</span></td>
<td align="right" nowrap="nowrap"><span class="genmed">{L_SELECT_SORT_METHOD}: {S_MODE_SELECT} {L_ORDER} {S_ORDER_SELECT}
<input type="submit" name="submit" value="{L_SUBMIT}" class="liteoption" />
</span></td>
</tr>
</table>
<table width="95%" cellpadding="3" cellspacing="1" border="0" class="forumline" align="center">
<!-- BEGIN memberrow -->
<td class="{memberrow.ROW_CLASS}" align="center"><a href="{memberrow.U_VIEWPROFILE}">{memberrow.AVATAR_IMG}</a></td>
<!-- END memberrow -->
<tr>
<td class="catbottom" colspan="8" height="28"><span class="nav">{PAGE_NUMBER}</span></td>
</tr>
</table>
<table width="95%" cellspacing="0" cellpadding="0" border="0" align="center">
<tr>
<td align="right"><span class="nav">{PAGINATION}</span></td>
</tr>
</table></form>
<table width="95%" cellspacing="2" border="0" align="center">
<tr>
<td valign="top" align="right">{JUMPBOX}</td>
</tr>
</table>