Posts: 192
Threads: 42
Joined: May 2016
2017-02-06, 11:14 PM
(This post was last modified: 2017-02-07, 03:13 PM by User 106720 .)
I've got PageManager installed and I would like to display all users of a certain usergroup on a custom page. What's the PHP Code I need to use to display all the members of that particular usergroup on that page?
Help would be appreciated as I'm stuck here.
I tried looking around on Google but I couldn't find anything about it.
Thanks!
Bumpy bump
Posts: 290
Threads: 63
Joined: Nov 2015
Reputation:
5
2017-02-07, 06:58 PM
(This post was last modified: 2017-02-07, 06:59 PM by Nicole-Studios .)
* Bumping this as I'm curious as well.
I'm going to assume automatically that you'll have to use PHP and NOT use the MyBB templates, so it may work better as a plugin UNLESS you're okay with that page not displaying like the rest of the forum.
I know it would require pulling users from the database, so I'm curious what the function would be as well.
Posts: 1,175
Threads: 26
Joined: Nov 2014
Reputation:
220
2017-02-07, 08:56 PM
(This post was last modified: 2017-02-07, 09:00 PM by SvePu .)
It's not a big deal
I attached a simple PageManager page with a desired list.
You can change the listed user group member by editing the query "usergroup IN ('2', '4') parameters.
Simple import the page on PageManager in ACP
usergroupmembers.xml (Size: 1.76 KB / Downloads: 339)
Posts: 22
Threads: 8
Joined: Oct 2016
Reputation:
0
2017-02-08, 03:07 AM
(This post was last modified: 2017-02-08, 03:17 AM by Rory Mercury .)
(2017-02-07, 08:56 PM) SvePu Wrote: It's not a big deal
I attached a simple PageManager page with a desired list.
You can change the listed user group member by editing the query "usergroup IN ('2', '4') parameters.
Simple import the page on PageManager in ACP
I will try this.
Edit: Doesn't even work. Shows a blank page.
Posts: 1,175
Threads: 26
Joined: Nov 2014
Reputation:
220
2017-02-08, 06:26 AM
(2017-02-08, 03:07 AM) Rory Mercury Wrote: I will try this.
Edit: Doesn't even work. Shows a blank page.
Do you have enabled the imported page on PageManager ??
Posts: 290
Threads: 63
Joined: Nov 2015
Reputation:
5
2017-02-08, 06:02 PM
<?xml version="1.0" encoding="UTF-8"?>
<pagemanager version="1.5.2" xmlns="http://mods.mybb.com/view/page-manager">
<page>
<name><![CDATA[UserGroupMember]]></name>
<url><![CDATA[usergroupmembers]]></url>
<template><![CDATA[PD9waHANCg0KZ2xvYmFsICRoZWFkZXJpbmNsdWRlLCAkaGVhZGVyLCAkdGhlbWUsICRmb290ZXIsICRkYjsNCg0KJGFsdGJnID0gYWx0X3Ryb3coKTsNCiR1c2VybGlzdCA9ICcnOw0KJHF1ZXJ5ID0gJGRiLT5zaW1wbGVfc2VsZWN0KCJ1c2VycyIsICIqIiwgInVzZXJncm91cCBJTiAoJzInLCc0JykiLCBhcnJheSgib3JkZXJfYnkiID0+ICd1c2VybmFtZScsICJvcmRlcl9kaXIiID0+ICdBU0MnKSk7IC8vDQoJDQoJCXdoaWxlKCR1c2VycyA9ICRkYi0+ZmV0Y2hfYXJyYXkoJHF1ZXJ5KSkNCgkJew0KCQkJJHVzZXJuYW1lID0gYnVpbGRfcHJvZmlsZV9saW5rKGZvcm1hdF9uYW1lKGh0bWxzcGVjaWFsY2hhcnNfdW5pKCR1c2Vyc1sndXNlcm5hbWUnXSksICR1c2Vyc1sndXNlcmdyb3VwJ10sICR1c2Vyc1snZGlzcGxheWdyb3VwJ10pLCAkdXNlcnNbJ3VpZCddKTsNCgkJCQ0KCQkJJHVzZXJsaXN0IC49ICc8dHI+PHRkIGNsYXNzPSInLiRhbHRiZy4nIj4nLiR1c2VybmFtZS4nPC90ZD48L3RyPic7DQoJCQkkYWx0YmcgPSBhbHRfdHJvdygpOw0KCQl9DQoNCiR0ZW1wbGF0ZT0nPGh0bWw+DQo8aGVhZD4NCjx0aXRsZT4nLiRwYWdlc1snbmFtZSddLic8L3RpdGxlPg0KeyRoZWFkZXJpbmNsdWRlfQ0KPC9oZWFkPg0KPGJvZHk+DQp7JGhlYWRlcn0NCjx0YWJsZSBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSInLiR0aGVtZVsnYm9yZGVyd2lkdGgnXS4nIiBjZWxscGFkZGluZz0iJy4kdGhlbWVbJ3RhYmxlc3BhY2UnXS4nIiBjbGFzcz0idGJvcmRlciI+DQo8dGhlYWQ+DQo8dHI+DQo8dGQgY2xhc3M9InRoZWFkIj4NCjxzdHJvbmc+Jy4kcGFnZXNbJ25hbWUnXS4nPC9zdHJvbmc+DQo8L3RkPg0KPC90cj4NCjwvdGhlYWQ+DQo8dGJvZHk+DQp7JHVzZXJsaXN0fQ0KPC90Ym9keT4NCjwvdGFibGU+DQo8YnIgLz4NCnskZm9vdGVyfQ0KPC9ib2R5Pg0KPC9odG1sPic7DQoNCiR0ZW1wbGF0ZT1zdHJfcmVwbGFjZSgiXCciLCAiJyIsIGFkZHNsYXNoZXMoJHRlbXBsYXRlKSk7DQoNCmFkZF9icmVhZGNydW1iKCRwYWdlc1snbmFtZSddKTsNCg0KZXZhbCgiXCRwYWdlPVwiIi4kdGVtcGxhdGUuIlwiOyIpOw0KDQpvdXRwdXRfcGFnZSgkcGFnZSk7DQoNCj8+]]></template>
<checksum>dccc8f86d3ec270dd2cb622b5dda3e80</checksum>
</page>
</pagemanager>
This is what it looks like for me, is it supposed to look like that?
Posts: 1,175
Threads: 26
Joined: Nov 2014
Reputation:
220
2017-02-08, 06:33 PM
(This post was last modified: 2017-02-08, 06:38 PM by SvePu .)
Import the xml file with PageManager plugin and you'll see the clear code.....exported page XMLs are encoded.
But here also is the script for the PM page
(without using MyBB Templates) :
<?php
global $headerinclude, $header, $theme, $footer, $db;
$altbg = alt_trow();
$userlist = '';
$query = $db->simple_select("users", "*", "usergroup IN ('2','4')", array("order_by" => 'username', "order_dir" => 'ASC'));
while($users = $db->fetch_array($query))
{
$username = build_profile_link(format_name(htmlspecialchars_uni($users['username']), $users['usergroup'], $users['displaygroup']), $users['uid']);
$userlist .= '<tr><td class="'.$altbg.'">'.$username.'</td></tr>';
$altbg = alt_trow();
}
$template='<html>
<head>
<title>'.$pages['name'].'</title>
{$headerinclude}
</head>
<body>
{$header}
<table border="0" cellspacing="'.$theme['borderwidth'].'" cellpadding="'.$theme['tablespace'].'" class="tborder">
<thead>
<tr>
<td class="thead">
<strong>'.$pages['name'].'</strong>
</td>
</tr>
</thead>
<tbody>
{$userlist}
</tbody>
</table>
<br />
{$footer}
</body>
</html>';
$template=str_replace("\'", "'", addslashes($template));
add_breadcrumb($pages['name']);
eval("\$page=\"".$template."\";");
output_page($page);
?>
Posts: 290
Threads: 63
Joined: Nov 2015
Reputation:
5
2017-02-08, 09:34 PM
(This post was last modified: 2017-02-08, 09:36 PM by Nicole-Studios .)
Out of curiosity, would this work as a page outside of the page manager?
And would it be possible to add usergroup names and the numbers of how many accounts are in that particular usergroup?
Posts: 1,175
Threads: 26
Joined: Nov 2014
Reputation:
220
2017-02-08, 10:33 PM
A single page would look like that:
<?php
define("IN_MYBB", 1);
require_once "./global.php";
$altbg = alt_trow();
$userlist = '';
$num = 1;
$query = $db->query("SELECT g.title AS groupname, u.*
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."usergroups g ON (g.gid=u.usergroup)
WHERE usergroup IN ('2')
ORDER BY username ASC");
while($users = $db->fetch_array($query))
{
$usergroupname = htmlspecialchars_uni($users['groupname']);
$username = build_profile_link(format_name(htmlspecialchars_uni($users['username']), $users['usergroup'], $users['displaygroup']), $users['uid']);
$userlist .= '<tr><td style="text-align:center;" class="'.$altbg.'">'.$num.'</td><td class="'.$altbg.'">'.$username.'</td></tr>';
$altbg = alt_trow();
$num++;
}
add_breadcrumb("Member of Usergroup: {$usergroupname}", "usergroupmember.php");
$pagetemplate = "<html>
<head>
<title>".$settings['bbname']." - UsergroupMember</title>
{$headerinclude}
<style type=\"text/css\">
.center{
vertical-align: middle;
text-align:center;
}
</style>
</head>
<body>
{$header}
<table border=\"0\" cellspacing=\"".$theme['borderwidth']."\" cellpadding=\"".$theme['tablespace']."\" class=\"tborder\">
<thead>
<tr>
<td class=\"thead\" colspan=\"2\"><strong>Usergroup: {$usergroupname}</strong></td>
</tr>
</thead>
<tbody>
<tr>
<td class=\"tcat\" width=\"5%\" style=\"text-align:center;\" ><strong>Nr.</strong></td>
<td class=\"tcat\"><strong>User</strong></td>
</tr>
{$userlist}
<tr>
<td class=\"tfoot\" colspan=\"2\"></td>
</tr>
</tbody>
</table>
{$footer}
</body>
</html>";
$pagetemplate = str_replace("\\'", "'", addslashes($pagetemplate));
eval("\$page = \"".$pagetemplate."\";");
output_page($page);
?>
Attached Files
usergroupmember.php (Size: 1.73 KB / Downloads: 116)
Posts: 290
Threads: 63
Joined: Nov 2015
Reputation:
5
2017-02-11, 11:03 PM
Doesn't work?
<?php
define("IN_MYBB", 1);
require_once "./global.php";
$altbg = alt_trow();
$userlist = '';
$num = 1;
$query = $db->query("SELECT g.title AS groupname, u.*
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."usergroups g ON (g.gid=u.usergroup)
WHERE usergroup IN ('12','13','14','15','16')
ORDER BY username ASC");
while($users = $db->fetch_array($query))
{
$usergroupname = htmlspecialchars_uni($users['groupname']);
$username = build_profile_link(format_name(htmlspecialchars_uni($users['username']), $users['usergroup'], $users['displaygroup']), $users['uid']);
$userlist .= '<tr><td style="text-align:center;" class="'.$altbg.'">'.$num.'</td><td class="'.$altbg.'">'.$username.'</td></tr>';
$altbg = alt_trow();
$num++;
}
add_breadcrumb("Member of Usergroup: {$usergroupname}", "usergroupmember.php");
$pagetemplate = "<html>
<head>
<title>".$settings['bbname']." - UsergroupMember</title>
{$headerinclude}
<style type=\"text/css\">
.center{
vertical-align: middle;
text-align:center;
}
</style>
</head>
<body>
{$header}
<table border=\"0\" cellspacing=\"".$theme['borderwidth']."\" cellpadding=\"".$theme['tablespace']."\" class=\"tborder\">
<thead>
<tr>
<td class=\"thead\" colspan=\"2\"><strong>Usergroup: {$usergroupname}</strong></td>
</tr>
</thead>
<tbody>
<tr>
<td class=\"tcat\" width=\"5%\" style=\"text-align:center;\" ><strong>Nr.</strong></td>
<td class=\"tcat\"><strong>User</strong></td>
</tr>
{$userlist}
<tr>
<td class=\"tfoot\" colspan=\"2\"></td>
</tr>
</tbody>
</table>
{$footer}
</body>
</html>";
$pagetemplate = str_replace("\\'", "'", addslashes($pagetemplate));
eval("\$page = \"".$pagetemplate."\";");
output_page($page);
?>