Pagina 1 van 1
Moderator probleem, ineens meedere moderatoren.
Geplaatst: 26 okt 2005, 16:59
door stimpy68
Wat is het probleem? Bij het kiezen van een moderator worden ineens meerdere mensen moderator
Wanneer ontstond het probleem? geen idee, het is voor het eerst dat ik de moderator ga aanpassen
Adres van je forum: http://
Geïnstalleerde mods: Diverse o.a. EasyMod en Junior Admin mod
Huidige template:
phpBB versie: 2.0.17
Host:
http://www.futureflex.nl
Heb je onlangs een mod of stijl geïnstalleerd? Nee
Heb je gezocht naar een antwoord? Ja
Overige opmerkingen: Er is een groep waarin 2 personen zitten, ik en een mede-beheerder, deze groep is moderator van alle fora. Er zijn nu meerdere moderatoren die apart een forum voor hun rekening nemen. Ik heb dus de groep moderator af gemaakt, dit gaat zonder problemen, maar zodra ik de mede-beheerder moderator maak van 1 van de fora dan zijn ineens een 7 andere leden ook moderator En als ik 1 van de leden moderator maak dan gaan die andere ook weer mee. Maar deze personen zijn geen moderator en hebben geen enkele relatie tot elkaar (zitten niet in een groep e.d.) Het zijn overigens telkens dezelfde leden waarbij dat gebeurd.
Op 1 of andere manier hebben deze personen in de database een relatie met elkaar, maar welke?
Geplaatst: 26 okt 2005, 17:27
door svenn
en je krijgt in het geheel geen errors ?
normaal zijn alle gebruikers uniek want in phpbb werkt men met id

nog nooit gehoort vermoedelijk zal het ergens een probleem zijn met de mods ....
Geplaatst: 26 okt 2005, 17:30
door stimpy68
Nee totaal geen errors, daarom begrijp ik het niet....
Geplaatst: 26 okt 2005, 17:40
door Paul
Heb je php 5?
Geplaatst: 26 okt 2005, 17:46
door stimpy68
Yep, maar kan niet downgraden, zit bij een hostingprovider. Heb wel een fix gedaan (die ergens genoemd wordt op 1 van de fora hier).
Waar kan ik vinden in de database wie moderator is van welk forum (of andersom...) Dan probeer ik de database anders wel handmatig aan te passen in de tussentijd.
Geplaatst: 26 okt 2005, 18:09
door stimpy68
Ik volgens mij iets vreemds in de database, misschien hoort dit of niet:
in de database in phpbb_groups staan alle users met als group description "Personal User", toevalligerwijs mis ik wel enkele userid's in die tabel en daar zitten de mensen bij die ineens moderator worden, toeval?
Maar horen alle gebruikers in de lijst te staan?
Geplaatst: 26 okt 2005, 18:11
door Paul
Alle users horen daarin te staan, maar volgens mij kan dat niet het probleem zxijn.
Geplaatst: 26 okt 2005, 18:18
door svenn
probeer ze eens er bij te zetten , die mods veranderen soms heel wat ... maak wel een backup

.
Geplaatst: 26 okt 2005, 18:28
door Paul
Svenn, heb nog nooit een mod geziet die iets VERWIJDERD uit de groepen table

Geplaatst: 26 okt 2005, 18:43
door stimpy68
Ik zit ook even in phpbb_user_group te kijken en daar zie ik dat groupid 71 meerdere userid's heeft, maar in de tabel php_groups is 71 een personal user. Is dat niet een beetje vreemd?
Ik neem ook aan dat er een relatie is tussen het userid en groupid, maar die kan ik niet zo snel vinden, iemand een idee?
Geplaatst: 26 okt 2005, 18:55
door Bas
Phpbb, niet php, N00B!
En dit taalgedrag slaat dus weer helemaal nergens op. Kap met dat kleutergedrag! -- Bee
Geplaatst: 26 okt 2005, 19:01
door stimpy68
Jeetje, mag ik ook een tikfout maken zeg....

het is inderdaad phpbb_groups
Geplaatst: 11 nov 2005, 12:27
door stimpy68
Ik heb het probleem kunnen oplossen, het bleek dat er leden waren die geen group hadden in de tabel phpbb_groups. Na wat zoekwerk blijk je dit met script te kunnen oplossen:
Code: Selecteer alles
<?php
//***** check users and user groups ****//
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'includes/functions_search.'.$phpEx);
// Start session management
$userdata = session_pagestart($user_ip, PAGE_SEARCH);
init_userprefs($userdata);
// End session management
$sql = "SELECT user_id, username
FROM " . USERS_TABLE ."
WHERE user_id > 0";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain user list', '', __LINE__, __FILE__, $sql);
}
$liste ='';
while ( $row = $db->sql_fetchrow($result) )
{
$username = $row['username'];
$user_id = $row['user_id'];
$usergroup = '';
$sql1 = "SELECT ug.group_id
FROM " . USER_GROUP_TABLE ." ug, ". GROUPS_TABLE. " g
WHERE ug.user_id = $user_id
AND ug.group_id = g.group_id
AND g.group_single_user = 1
";
if ( ($result1 = $db->sql_query($sql1)) )
{
$row1 = $db->sql_fetchrow($result1);
$usergroup =( ( $row1['group_id'] != '' ) ? $row1['group_id'] : 'User has no user group'.$row1 );
}
if (!($row1['group_id'] != ''))
{
$sql2 = "SELECT MAX(group_id) AS total
FROM " . GROUPS_TABLE;
if ( !($result2 = $db->sql_query($sql2)) )
{
message_die(GENERAL_ERROR, 'Could not obtain next group_id information', '', __LINE__, __FILE__, $sq2l);
}
if ( !($row2 = $db->sql_fetchrow($result2)) )
{
message_die(GENERAL_ERROR, 'Could not obtain next group_id information', '', __LINE__, __FILE__, $sql2);
}
$group_id = $row2['total'] + 1;
$sql3 = "INSERT INTO " . GROUPS_TABLE . " (group_id, group_name, group_description, group_single_user, group_moderator)
VALUES ($group_id, '', 'Personal User', 1, 0)";
if ( !($result3 = $db->sql_query($sql3, BEGIN_TRANSACTION)) )
{
message_die(GENERAL_ERROR, 'Could not insert data into groups table', '', __LINE__, __FILE__, $sql3);
}
$sql4 = "INSERT INTO " . USER_GROUP_TABLE . " (user_id, group_id, user_pending)
VALUES ($user_id, $group_id, 0)";
if( !($result4 = $db->sql_query($sql4, END_TRANSACTION)) )
{
message_die(GENERAL_ERROR, 'Could not insert data into user_group table', '', __LINE__, __FILE__, $sql4);
}
$usergroup = $usergroup.', adding user group '.$group_id;
}
$liste .= ( ( $liste != '' ) ? '<br> ' : '' ) . $username.' <b>'.$usergroup.'</b>';
}
message_die(GENERAL_MESSAGE,'Users:<br>'.$liste);
?>
Na het draaien van het script werkt alles weer naar behoren!