admin users list

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
Guido
Mitglied
Beiträge: 1307
Registriert: 06.10.2002 09:44
Wohnort: Rheinland
Kontaktdaten:

admin users list

Beitrag von Guido »

Ich hoffe es kennt einer von euch den o.g. Mod. denn ich hab ein kleines Problem damit. An sich ist der super praktisch. Man kann dort in einem pull down Menü nach mehreren Kriterien sich eine Liste der User erstellen lassen. Die Kriterien sind:ID,Benutzername,Beiträge,Anmeldedatum und letzter Besuch. Das ganze kann man dann noch auf-bzw. absteigend (ASC/DESC) sortieren.
Die Anzahl der gezeigten Datensätze pro seite kann man im Script einfach einstellen (standard 30/Seite).
Nun kommt aber mein Problem. Standardmässig stehen die pull down Menüs auf "ID" und " "Aufsteigend". Wenn ich jetzt z.B. nach dem "Anmeldedatum" sortieren lasse zeigt er mir die ersten 30 (wie im script eingestellt) richtig an, die Anzeige im Pull Down Menü springt aber gleichzeitig wieder in die Ausgangsposition (ID/Aufsteigend) zurück und wenn ich jetzt auf "Weiter" bzw. "Seite 2" klicke sortiert er eben nach "ID" und nicht wie ich es ja wollte nach dem "Anmeldedatum".
Hoffentlich habe ich das einigermassen verständlich erklärt und hoffentlich weiss einer einen Rat.

P.S. Im Script die Anzahl der Ergebnisse von 30 auf z.B.100 zu erhöhen sodass alle User auf eine Seite passen ist nicht die Lösung die ich bevorzuge, da eines Tages hoffentlich so viele User registriert sind, dass das dann zu lange zum generieren braucht und auch unübersichtlich wird...


EDIT:Hier der Code

Code: Alles auswählen

<?php
/***************************************************************************
 *								admin_users_list.php
 *								-------------------
 *   begin                : Thursday, July 18, 2002
 *   copyright            : (C) 2002 Smartor
 *   email                : smartor@zapo.net
 *
 *   $Id: admin_users_list.php,v 1.0.1 2002/7/25, 15:12:22 hnt 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);

if( !empty($setmodules) )
{
	$filename = basename(__FILE__);
	$module['Users']['Users List'] = $filename;
	return;
}

//
// Let's set the root dir for phpBB
//
$phpbb_root_path = '../';
require($phpbb_root_path . 'extension.inc');
require('./pagestart.' . $phpEx);

//
// Set variables
//
$users_per_page = 30;
$start = (isset($HTTP_GET_VARS['start'])) ? $HTTP_GET_VARS['start'] : 0;
$sort_method = (isset($HTTP_POST_VARS['sort'])) ? $HTTP_POST_VARS['sort'] : 'user_id';
if (isset($HTTP_POST_VARS['order']))
{
	$sort_order = ($HTTP_POST_VARS['order'] == 'DESC') ? 'DESC' : '';
}

$template->set_filenames(array(
	'body' => 'admin/admin_users_list_body.tpl')
);

$template->assign_vars(array(
	'L_ADMIN_USERS_LIST_TITLE' => $lang['Admin_Users_List_Title'],
	'L_ADMIN_USERS_LIST_EXPLAIN' => $lang['Admin_Users_List_Explain'],
	'L_SELECT_SORT_METHOD' => $lang['Select_sort_method'],
	'U_LIST_ACTION' => append_sid("admin_users_list.$phpEx"),
	'L_SORT' => $lang['Sort'],
	'L_ORDER' => $lang['Order'],
	'L_SORT_DESCENDING' => $lang['Sort_Descending'],
	'L_SORT_ASCENDING' => $lang['Sort_Ascending'],
	'L_USERNAME' => $lang['Username'],
	'L_EMAIL' => $lang['Email'],
	'L_JOINED' => $lang['Joined'],
	'L_LAST_VISIT' => $lang['Last_visit'],
	'L_POSTS' => $lang['Posts'],
	'L_ACTIVE' => $lang['Active'] )
);

// Count users
$sql = "SELECT user_id FROM ".USERS_TABLE." WHERE user_id > 0";
if(!$result = $db->sql_query($sql))
{
	message_die(GENERAL_ERROR, "Could not count Users", "", __LINE__, __FILE__, $sql);
}
$total_users = $db->sql_numrows($result);

// Query users info...
$sql = "SELECT user_id, username, user_email, user_regdate, user_lastvisit, user_posts, user_active FROM ".USERS_TABLE." WHERE user_id > 0 ORDER BY " . $sort_method . " " . $sort_order . " LIMIT ".$start.",".$users_per_page;
if(!$result = $db->sql_query($sql))
{
	message_die(GENERAL_ERROR, "Could not query Users information", "", __LINE__, __FILE__, $sql);
}

while( $row = $db->sql_fetchrow($result) )
{
	$userrow[] = $row;
}

for ($i = 0; $i < $users_per_page; $i++)
{
	if (empty($userrow[$i]))
	{
		break;
	}

	$row_color = (($i % 2) == 0) ? "row1" : "row2";
	
	$template->assign_block_vars('userrow', array(
		'COLOR' => $row_color,
		'NUMBER' => ($start + $i + 1),
		'USERNAME' => $userrow[$i]['username'],
		'U_ADMIN_USER' => append_sid("admin_users.$phpEx?mode=edit&" . POST_USERS_URL . "=" . $userrow[$i]['user_id']),
		'U_ADMIN_USER_AUTH' => append_sid("admin_ug_auth.$phpEx?mode=user&" . POST_USERS_URL . "=" . $userrow[$i]['user_id']),
		'EMAIL' => $userrow[$i]['user_email'],
		'JOINED' => create_date($lang['DATE_FORMAT'], $userrow[$i]['user_regdate'], $board_config['board_timezone']),
		'LAST_VISIT' => (!$userrow[$i]['user_lastvisit']) ? '' : create_date($lang['DATE_FORMAT'], $userrow[$i]['user_lastvisit'], $board_config['board_timezone']),
		'POSTS' => $userrow[$i]['user_posts'],
		'ACTIVE' => ( $userrow[$i]['user_active'] ) ? $lang['Yes'] : $lang['No']
		) //end array
	);
} // end for

$template->assign_vars(array(
	'PAGINATION' => generate_pagination(append_sid("admin_users_list.$phpEx?author=Smartor"), $total_users, $users_per_page, $start),
	'PAGE_NUMBER' => sprintf($lang['Page_of'], ( floor( $start / $users_per_page ) + 1 ), ceil( $total_users / $users_per_page ))
	) // end array
);

// Finally...
$template->pparse('body');

include('./page_footer_admin.'.$phpEx);

?>
Zuletzt geändert von Guido am 22.12.2002 18:35, insgesamt 1-mal geändert.
Benutzeravatar
Guido
Mitglied
Beiträge: 1307
Registriert: 06.10.2002 09:44
Wohnort: Rheinland
Kontaktdaten:

Beitrag von Guido »

Hallo
Es hat sich erledigt ! Habe eine Lösung gefunden. Für alle die das selbe Problem haben: HIER LESEN

Danke an alle die nachgedacht haben...
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“