Advance Online Panel/Benutzergruppen abrufen
|
TBR |
Geschrieben am 26. Mai 2018 12:46:31
|
|
Hallo zusammen,
ich wollte im Tooltip vom Advance Online Panel eine Benutzergruppe anzeigen zu lassen bzw einen Text "Dieses Mitglied ist in Gruppe xyz" und wenn das Mitglied nicht in der Gruppe ist dann " Das Mitglied ist noch nicht in Gruppe xyz".
Ich habe es schon mit den Code aus der Maincore.php und Profil.php versucht und etwas anzupassen, aber entweder wurde nichts angezeigt oder Error 500.
Hat vielleicht jemand einen Denkanstoß wie wann es im Tooltip anzeigen könnte? |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
|
Layzee |
Geschrieben am 27. Mai 2018 08:54:24
|
|
if (CHECKGROUP(xx)) {
echo 'Dieses Mitglied ist in Gruppe xyz';
}else{
echo 'Das Mitglied ist noch nicht in Gruppe xyz';
}
(XX) ist die Gruppen ID, diese musst Du dort nur noch eintragen.
Mir erschliesst sich in der von Dir genannten Form zwar der Sinn nicht ganz, aber mit obigem Code lässt sich sowas realisieren. |
Information: |
PHP Version: 7.2.x • MySQL Version: 8.0 • PHP-Fusion: IUP-FIX-PHP8 |
|
|
|
TBR |
Geschrieben am 27. Mai 2018 09:40:03
|
|
hallo layzee,
so ähnlich hab ich es schon versucht, aber das funktioniert im tooltip so irgendwie nicht.
was muss ich denn abfragen einfach user_groups oder die group_id?
hier mal ein beispiel wie das geschlecht im tooltip abgerufen wird.
if (isset($user['user_gender'])) {
$user_gender = ($user['user_gender'] == "1" ? "<img src='".AOU_IMAGES."frau-tool.png' alt='geschlecht' /> " : ($user['user_gender'] == "2" ? " <img src='".AOU_IMAGES."mann-tool.png' alt='geschlecht' /> " : " <img src='".AOU_IMAGES."paar-tool.png' alt='geschlecht' /> "));
} else {
$user_gender = "Keine Angaben";
}
und so angezeigt
$userTooltip .= "<span class='small'>".$locale['aou-panel-107']."</span><span class='small aou-flright'>".$user_gender." </span><br /><br/>"; |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
|
Layzee |
Geschrieben am 27. Mai 2018 13:08:47
|
|
Der Autor vom Panel hat da einfach nur mit einer Variablen gearbeitet (Wenn der User im Profil sein Geschlecht angegeben hat, fülle die Variable mit dem Bild "Frau" oder "Mann" (je nach Geschlecht) und zeige es an. Ist kein Geschlecht angegeben, schreibe "Keine Angaben" in die Variable.).
Also erst die Bedingung festgelegt und dann die Variable mit dem entsprechenden Wert bestückt.
Das brauchst Du aber bei Deinem Anliegen nicht.
Kannst Du mal bitte die Ausgabe-Datei anhängen? |
Information: |
PHP Version: 7.2.x • MySQL Version: 8.0 • PHP-Fusion: IUP-FIX-PHP8 |
|
|
|
TBR |
Geschrieben am 27. Mai 2018 13:48:08
|
|
ich häng mal die komplette _functions.ins.php an
<?php
/*-------------------------------------------------------+
| PHP-Fusion Content Management System |
| Copyright ? 2002 - 2017 Nick Jones |
| https://www.php-fusion.co.uk/ |
+--------------------------------------------------------+
| Filename: _functions.inc.php |
| Copyright ? 2009-2017 ptown67 |
| http://www.ptown67.de/ |
+--------------------------------------------------------+
| Co-Author: PHP-Fusion Austria |
| https://www.phpfusion-development.at/ |
+--------------------------------------------------------+
| This program is released as free software under the |
| Affero GPL license. You can redistribute it and/or |
| modify it under the terms of this license which you |
| can read by viewing the included agpl.txt or online |
| at www.gnu.org/licenses/agpl.html. Removal of this |
| copyright header is strictly prohibited without |
| written permission from the original author(s). |
+--------------------------------------------------------*/
// Check Access
if (!defined("IN_FUSION")) { die("Access Denied"); }
// Systemfiles
require_once INCLUDES."infusions_include.php";
// Define Paths
if (!defined("AOU_ROOT")) { define ("AOU_ROOT", INFUSIONS."advanced_online_panel/"); }
if (!defined("AOU_ADMIN")) { define ("AOU_ADMIN", AOU_ROOT."advanced_online_panel_admin.php"); }
if (!defined("AOU_IMAGES")) { define ("AOU_IMAGES", $settings['siteurl']."infusions/advanced_online_panel/images/"); }
if (!defined("AOU_INCLUDES")) { define ("AOU_INCLUDES", AOU_ROOT."includes/"); }
if (!defined("AOU_LOCALE")) { define ("AOU_LOCALE", AOU_ROOT."locale/"); }
// Locale
if (@file_exists(AOU_LOCALE.$settings['locale'].".php")) {
require_once AOU_LOCALE.$settings['locale'].".php";
} else {
require_once AOU_LOCALE."English.php";
}
// Get Settings
$aouSettings = get_settings("aou-panel");
// Display Tabs for Administration
if (!@function_exists("aou_displayTabs")) {
function aou_displayTabs($activeTab = 1) {
global $aidlink, $locale;
// Standard Variables
$returnString = "";
// Build Tabs
$returnString .= "<table width='80%' cellpadding='1' cellspacing='1' class='center tbl-border'>\n";
$returnString .= "<tr>\n";
$returnString .= "<td align='center' width='25%' class='".($activeTab == "1" ? "tbl2" : "tbl1")."'>\n";
$returnString .= "<a href='".AOU_ADMIN.$aidlink."&tab=1' title='".$locale['aou-tabs-101']."'>".($activeTab == "1" ? "<strong>".$locale['aou-tabs-101']."</strong>" : $locale['aou-tabs-101'])."</a>\n";
$returnString .= "</td>\n";
$returnString .= "<td align='center' width='25%' class='".($activeTab == "2" ? "tbl2" : "tbl1")."'>\n";
$returnString .= "<a href='".AOU_ADMIN.$aidlink."&tab=2' title='".$locale['aou-tabs-102']."'>".($activeTab == "2" ? "<strong>".$locale['aou-tabs-102']."</strong>" : $locale['aou-tabs-102'])."</a>\n";
$returnString .= "</td>\n";
$returnString .= "<td align='center' width='25%' class='".($activeTab == "3" ? "tbl2" : "tbl1")."'>\n";
$returnString .= "<a href='".AOU_ADMIN.$aidlink."&tab=3' title='".$locale['aou-tabs-103']."'>".($activeTab == "3" ? "<strong>".$locale['aou-tabs-103']."</strong>" : $locale['aou-tabs-103'])."</a>\n";
$returnString .= "</td>\n";
$returnString .= "<td align='center' width='25%' class='".($activeTab == "4" ? "tbl2" : "tbl1")."'>\n";
$returnString .= "<a href='".AOU_ADMIN.$aidlink."&tab=4' title='".$locale['aou-tabs-104']."'>".($activeTab == "4" ? "<strong>".$locale['aou-tabs-104']."</strong>" : $locale['aou-tabs-104'])."</a>\n";
$returnString .= "</td>\n";
$returnString .= "</tr>\n";
$returnString .= "</table>\n";
$returnString .= "<hr />\n";
// Display Output
return (string)$returnString;
}
}
// Display a System Message
if (!@function_exists("aou_displayMessage")) {
function aou_displayMessage($singularMessage, $pluralMessage, $errorMessages, $endMessage, $errorCounter = 0, $type = 0, $hideable = true) {
// Standard Variables
$returnString = "";
// Display a Full Message
if ($singularMessage && $pluralMessage && !empty($errorMessages)) {
$errorCounter = ($errorCounter ? $errorCounter : count($errorMessages));
// Render Message
$returnString .= "<div class='admin-message'>\n";
$returnString .= ($errorCounter == "1" ? $singularMessage : $pluralMessage);
$returnString .= "<ul>\n";
foreach ($errorMessages AS $errorMessage) {
$returnString .= "<li>".$errorMessage."</li>\n";
}
$returnString .= "</ul>\n";
$returnString .= $endMessage;
$returnString .= "</div>\n";
// Display a One-Line Message
} elseif (!$singularMessage && !$pluralMessage && empty($errorMessages) && $endMessage) {
// Render Message
$returnString .= "<div class='admin-message'>\n";
$returnString .= $endMessage;
$returnString .= "</div>\n";
}
// If there is a Message, check if it should be hideable
if ($returnString && $hideable) {
$returnString = "<div id='close-message'>\n".$returnString."</div>\n";
}
// Return Output
return (string)$returnString;
}
}
// Display Content for the Panel
if (!@function_exists("aou_displayPanelContent")) {
function aou_displayPanelContent() {
global $aouSettings, $locale, $settings;
// Update Online Informations
aou_updateInformations();
// Standard Variables
$returnString = "";
// Start Content
$returnString .= "<ul id='aou-panel-list'>\n";
// Display Guests
if ($aouSettings['aou_showguests']) {
$guestsCounter = dbcount("(online_user)", DB_ONLINE, "online_user='0' AND online_lastactive > '".(time() - 300)."'");
$returnString .= "<li class='small'>· ".$locale['aou-panel-101'].": <span class='small2 aou-flright'>".number_format($guestsCounter)."</span></li>\n";
}
// Display Members
if ($aouSettings['aou_showmembers']) {
$membersCounter = dbcount("(online_user)", DB_ONLINE, "online_user != '0' AND online_lastactive > '".(time() - 1800)."'");
$returnString .= "<li class='small'>· ".$locale['aou-panel-102'].": <span class='small2 aou-flright'>".number_format($membersCounter)."</span></li>\n";
}
// Display Divider
if ($aouSettings['aou_showmembersnum']) {
$returnString .= "<hr class='side' />\n";
}
// Scrollbars
$returnString .= "<div class='scrollbar-inner'>\n";
// Display Last Seen Members
if ($aouSettings['aou_showmembersnum']) {
// Get all Members
$users = dbquery("SELECT * FROM ".DB_USERS." ORDER BY user_lastvisit DESC LIMIT 0,".$aouSettings['aou_showmembersnum']."");
if (dbrows($users)) {
while ($user = dbarray($users)) {
// Handle Online Status
$userLastseen = time() - $user['user_lastvisit'];
if ($userLastseen < 1800) {
$userLastseen = "<img src='".AOU_IMAGES."online.png' alt='".$locale['aou-panel-111']."' class='aou-status' />";
} elseif ($userLastseen < 2400) {
$userLastseen = "<img src='".AOU_IMAGES."10min.png' alt='".$locale['aou-panel-112']."' class='aou-status' />";
} elseif ($userLastseen < 4200) {
$userLastseen = "<img src='".AOU_IMAGES."30min.png' alt='".$locale['aou-panel-113']."' class='aou-status' />";
} elseif ($userLastseen < 7800) {
$userLastseen = "<img src='".AOU_IMAGES."60min.png' alt='".$locale['aou-panel-114']."' class='aou-status' />";
} else {
$userLastseen = "<img src='".AOU_IMAGES."offline.png' alt='".$locale['aou-panel-115']."' class='aou-status' />";
}
// Handle Level Color
$userColor = false;
if ($user['user_level'] == 103) {
$userColor = $aouSettings['aou_superadmincolor'];
} elseif ($user['user_level'] == 102) {
$userColor = $aouSettings['aou_admincolor'];
}
// Handle Forum Moderator Color
$userGroups = "";
if ($userColor === false && $user['user_groups']) {
$userGroups = explode(".", $user['user_groups']);
if (!empty($userGroups)) {
foreach ($userGroups AS $userGroup) {
if (isNum($userGroup) && $userGroup) {
if (dbcount("(forum_id)", DB_FORUMS, "(forum_moderators REGEXP('^\\\.{$userGroup}$|\\\.{$userGroup}\\\.|\\\.{$userGroup}$') || forum_moderators='".$userGroup."')")) {
$userColor = $aouSettings['aou_moderatorcolor']; break;
}
}
}
}
}
// Handle Normal Color
if ($userColor === false) {
$userColor = $aouSettings['aou_usercolor'];
}
// Handle User Avatar
if (isset($user['user_avatar']) && $user['user_avatar'] && @file_exists(IMAGES."avatars/".$user['user_avatar'])) {
$userAvatar = "<img src='".IMAGES."avatars/".$user['user_avatar']."' alt='".$locale['aou-panel-116']."' class='aou-avatar' />";
} else {
$userAvatar = "<img src='".AOU_IMAGES."noav.gif' alt='".$locale['aou-panel-116']."' class='aou-avatar' />";
}
// Handle User Gender
if (isset($user['user_gender'])) {
$user_gender = ($user['user_gender'] == "1" ? "<img src='".AOU_IMAGES."frau-tool.png' alt='geschlecht' /> " : ($user['user_gender'] == "2" ? " <img src='".AOU_IMAGES."mann-tool.png' alt='geschlecht' /> " : " <img src='".AOU_IMAGES."paar-tool.png' alt='geschlecht' /> "));
} else {
$user_gender = "Keine Angaben";
}
// Build Tooltip Content
$userTooltip = $userAvatar;
$userTooltip .= "<div align='right' class='aou-flright' style='color: #".$userColor."'><u>".$user['user_name']."</u><br /><span class='small'>".getuserlevel($user['user_level'])."</span></div>";
$userTooltip .= "<hr />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-106']."</span><span class='small aou-flright'>".$userLastseen."</span><br />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-107']."</span><span class='small aou-flright'>".$user_gender." </span><br /><br/>";
$userTooltip .= "<hr />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-108']."</span><span class='small aou-flright'>".showdate("%d.%m.%Y - %H.%M", $user['user_joined'])."</span><br />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-109']."</span><span class='small aou-flright'>".showdate("%d.%m.%Y - %H.%M", $user['user_lastvisit'])."</span><br />";
$userTooltip = str_replace("'", "\'", $userTooltip);
// Display User
$returnString .= "<li class='small'>\n";
$returnString .= "<span class='online_hotspot' onmouseover=\"online_tooltip.show('".$userTooltip."');\" onmouseout='online_tooltip.hide();'>\n";
$returnString .= "· <a href='".$settings['siteurl']."profile.php?lookup=".$user['user_id']."' style='color: #".$userColor."'>".$user['user_name']."<span class='small2 aou-flright'>".$userLastseen."</span></a></li>\n";
}
}
}
// Display Bots
if ($aouSettings['aou_showbots']) {
$botsList = array(
$aouSettings['aou_alexa'] => $locale['aou-panel-121'],
$aouSettings['aou_exalead'] => $locale['aou-panel-122'],
$aouSettings['aou_excite'] => $locale['aou-panel-123'],
$aouSettings['aou_fast'] => $locale['aou-panel-124'],
$aouSettings['aou_fireball'] => $locale['aou-panel-125'],
$aouSettings['aou_google'] => $locale['aou-panel-126'],
$aouSettings['aou_lycos'] => $locale['aou-panel-127'],
$aouSettings['aou_msn'] => $locale['aou-panel-128'],
$aouSettings['aou_yahoo'] => $locale['aou-panel-129']
);
// Display the Bots
foreach ($botsList AS $botTime => $botName) {
if ((time() - $aouSettings['aou_showbotstime']) <= $botTime) {
$returnString .= "<li class='small2'>\n";
$returnString .= "· ".$botName."<span class='small2 aou-flright'><img src='".AOU_IMAGES."robot.png' alt='".$locale['aou-panel-117']."' class='aou-status' /></span>\n";
$returnString .= "</li>\n";
}
}
}
// Scrollbars
$returnString .= "</div>\n";
// Display Divider
if ($aouSettings['aou_showmembersnum'] || $aouSettings['aou_showbots']) {
$returnString .= "<hr class='side' />\n";
}
// Display all Members
if ($aouSettings['aou_showallmembers']) {
$allMembersCounter = dbcount("(user_id)", DB_USERS, "user_status='0'");
$returnString .= "<li class='small'>· ".$locale['aou-panel-103'].": <span class='small2 aou-flright'>".number_format($allMembersCounter)."</span></li>\n";
}
// Display Members to Activate
if (iADMIN && checkrights("M") && $settings['admin_activation'] == "1") {
$membersActivateCounter = dbcount("(user_id)", DB_USERS, "user_status='2'");
$returnString .= "<li class='small'>· ".$locale['aou-panel-104'].": <span class='small2 aou-flright'>".number_format($membersActivateCounter)."</span></li>\n";
}
// Display all Members
if ($aouSettings['aou_shownewmember']) {
$newMember = dbarray(dbquery("SELECT user_id, user_name FROM ".DB_USERS." WHERE user_status='0' ORDER BY user_joined DESC LIMIT 0,1"));
$returnString .= "<li class='small'>· ".$locale['aou-panel-105'].": <span class='small2 aou-flright'><a href='".$settings['siteurl']."profile.php?lookup=".$newMember['user_id']."' title='".$newMember['user_name']."'>".trimlink($newMember['user_name'], 15)."</a></span></li>\n";
}
// End Content
$returnString .= "</ul>\n";
// Display Output
return (string)$returnString;
}
}
// Do Update Informations
if (!@function_exists("aou_updateInformations")) {
function aou_updateInformations() {
global $userdata;
// Get User Agent
$trackUserAgent = strtolower($_SERVER['HTTP_USER_AGENT']);
// Bots List
$botsList = array(
"archiver" => "alexa",
"exabot" => "exalead",
"architextspider" => "excite",
"fast" => "fast",
"firefly" => "fireball",
"googlebot" => "google",
"lycos_spider" => "lycos",
"msnbot" => "msn",
"slurp" => "yahoo"
);
// Update Bot Visits
foreach ($botsList AS $botUserAgent => $botDatabase) {
if (stristr($trackUserAgent, $botUserAgent)) {
set_setting("aou_".$botDatabase, time(), "aou-panel");
}
}
// Update current User
if (dbcount("(online_user)", DB_ONLINE, "online_user='".(iMEMBER ? $userdata['user_id'] : "0")."' AND online_ip='".USER_IP."'") == 1) {
dbquery("UPDATE ".DB_ONLINE." SET online_lastactive='".time()."' WHERE online_user='".(iMEMBER ? $userdata['user_id'] : "0")."' AND online_ip='".USER_IP."'");
} else {
dbquery("
INSERT INTO ".DB_ONLINE."
(online_user, online_ip, online_ip_type, online_lastactive)
VALUES
('".(iMEMBER ? $userdata['user_id'] : "0")."', '".USER_IP."', '".USER_IP_TYPE."', '".time()."')
");
}
dbquery("DELETE FROM ".DB_ONLINE." WHERE online_lastactive<".(time() - 300)."");
}
}
?> |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
|
Layzee |
Geschrieben am 27. Mai 2018 14:40:09
|
|
Ich würde sagen, am besten wäre die Anzeige wohl unter der Geschlchterangabe untergebracht:
if (CHECKGROUP(xx)) {
$userTooltip .= "<span class='small'>"Gruppe:"</span><span class='small aou-flright'>".Benutzer ist in Gruppe XY </span><br /><br/>";
}else{
$userTooltip .= "<span class='small'>"Gruppe:"</span><span class='small aou-flright'>".Benutzer ist in nicht Gruppe XY </span><br /><br/>";
}
(xx) ist hier wieder die ID der Benutzergruppe, die Du da abfragen willst. Benutzergruppen-ID findest Du immer im Adminbereich -> Benutzer -> Benutzergruppen, hier ist die Zahl in den Klammern vor der Gruppe oben in der Dropdownliste die ID der Gruppe.
Willst Du das Ganze dann noch nur ADMINS anzeigen lassen, baust Du eine entsprechende Abfrage um obigen Coder herum:
if (iADMIN) {
hier der vollständige obige Code
}
Oder entsprechend nur für SUPERADMINS:
if (iSUPERADMIN) {
hier der vollständige obige Code
} |
Information: |
PHP Version: 7.2.x • MySQL Version: 8.0 • PHP-Fusion: IUP-FIX-PHP8 |
|
|
|
TBR |
Geschrieben am 27. Mai 2018 16:06:50
|
|
wenn ich das so vor den tooltip eintrage und auch mittten drine eintrage, dann verursacht es nur eine Error 500 meldung.
if (CHECKGROUP(01)) {
$userTooltip .= "<span class='small'>"Gruppe:"</span><span class='small aou-flright'>".Benutzer ist in Gruppe XY </span><br /><br/>";
}else{
$userTooltip .= "<span class='small'>"Gruppe:"</span><span class='small aou-flright'>".Benutzer ist in nicht Gruppe XY </span><br /><br/>";
}
// Build Tooltip Content
$userTooltip = $userAvatar;
$userTooltip .= "<div align='right' class='aou-flright' style='color: #".$userColor."'><u>".$user['user_name']."</u><br /><span class='small'>".getuserlevel($user['user_level'])."</span></div>";
$userTooltip .= "<hr />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-106']."</span><span class='small aou-flright'>".$userLastseen."</span><br />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-107']."</span><span class='small aou-flright'>".$user_gender." </span><br /><br/>";
$userTooltip .= "<hr />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-108']."</span><span class='small aou-flright'>".showdate("%d.%m.%Y - %H.%M", $user['user_joined'])."</span><br />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-109']."</span><span class='small aou-flright'>".showdate("%d.%m.%Y - %H.%M", $user['user_lastvisit'])."</span><br />";
$userTooltip = str_replace("'", "\'", $userTooltip);
// Display User
$returnString .= "<li class='small'>\n";
$returnString .= "<span class='online_hotspot' onmouseover=\"online_tooltip.show('".$userTooltip."');\" onmouseout='online_tooltip.hide();'>\n";
$returnString .= "· <a href='".$settings['siteurl']."profile.php?lookup=".$user['user_id']."' style='color: #".$userColor."'>".$user['user_name']."<span class='small2 aou-flright'>".$userLastseen."</span></a></li>\n";
}
}
}
// Build Tooltip Content
$userTooltip = $userAvatar;
$userTooltip .= "<div align='right' class='aou-flright' style='color: #".$userColor."'><u>".$user['user_name']."</u><br /><span class='small'>".getuserlevel($user['user_level'])."</span></div>";
$userTooltip .= "<hr />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-106']."</span><span class='small aou-flright'>".$userLastseen."</span><br />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-107']."</span><span class='small aou-flright'>".$user_gender." </span><br /><br/>";
if (CHECKGROUP(01)) {
$userTooltip .= "<span class='small'>"Gruppe:"</span><span class='small aou-flright'>".Benutzer ist in Gruppe XY </span><br /><br/>";
}else{
$userTooltip .= "<span class='small'>"Gruppe:"</span><span class='small aou-flright'>".Benutzer ist in nicht Gruppe XY </span><br /><br/>";
}
$userTooltip .= "<hr />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-108']."</span><span class='small aou-flright'>".showdate("%d.%m.%Y - %H.%M", $user['user_joined'])."</span><br />";
$userTooltip .= "<span class='small'>".$locale['aou-panel-109']."</span><span class='small aou-flright'>".showdate("%d.%m.%Y - %H.%M", $user['user_lastvisit'])."</span><br />";
$userTooltip = str_replace("'", "\'", $userTooltip);
// Display User
$returnString .= "<li class='small'>\n";
$returnString .= "<span class='online_hotspot' onmouseover=\"online_tooltip.show('".$userTooltip."');\" onmouseout='online_tooltip.hide();'>\n";
$returnString .= "· <a href='".$settings['siteurl']."profile.php?lookup=".$user['user_id']."' style='color: #".$userColor."'>".$user['user_name']."<span class='small2 aou-flright'>".$userLastseen."</span></a></li>\n";
}
}
}
verursacht beides fehler, es müsste doch wie bei den anderen angaben [$user_group] irgendwie rausgefunden werden, oder?
ist if checkgroup nicht um einen inhalt für eine bestimmte gruppe anzuzeigen?
Bearbeitet von TBR am 27. Mai 2018 17:03:45
|
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
|
Krelli |
Geschrieben am 28. Mai 2018 14:56:05
|
|
Die Funktion checkgroup() prüft nicht, ob ein beliebiger (anderer) User Mitglied einer Gruppe ist, sondern ob man selbst (bzw. derjenige, der das Script gerade aufruft) in dieser Gruppe ist (z,B. um zu prüfen ob man den gerade aufgerufenen Content überhaupt sehen darf).
Mit einem zusätzl. Query über der Zeile
$userTooltip = str_replace("'", "\'", $userTooltip);
$gruppen_id = 1;
$result2 = dbquery("SELECT * FROM `".DB_USERS."` WHERE `user_groups` REGEXP('^\\\.".$gruppen_id."$|\\\.".$gruppen_id."\\\.|\\\.".$gruppen_id."$') AND `user_id` = '".$user['user_id']."'");
$rows = dbrows($result2);
if($rows != 0) { $userTooltip .= "<span class='small'>Gruppe:</span><span class='small aou-flright'>Benutzer ist in Gruppe XY </span><br /><br/>"; }
else { $userTooltip .= "<span class='small'>Gruppe:</span><span class='small aou-flright'>Benutzer ist in nicht Gruppe XY </span><br /><br/>"; } kannst du prüfen, ob ein Benutzer in einer bestimmten Gruppe ist.
Wenn du wie von Layzee gezeigt den kompletten Abschnitt nur für Admins aktivieren möchtest, setze noch if(iADMIN) { davor und dahinter als Abschluss } , also so:
if(iADMIN) {
OBIGEN CODE HIER REIN
}
Da die Usergruppen eigentlich bereits vorliegen (durch das vorangegangene DB-Query) und im Array $user[] gespeichert sind, kann man sich den $result2 Query auch komplett sparen und direkt mit $user['user_groups'] arbeiten und dessen Wert mit regex zerlegen und prüfen.
Mein Vorschlag ist also nicht 100% optimiert,sollte aber funktionieren.
Bearbeitet von Krelli am 29. Mai 2018 12:11:24
|
Information: |
PHP Version: 8.2.x • MySQL Version: Nicht ausgewählt • PHP-Fusion: IPv9-DE-MOD |
|
|
|
Layzee |
Geschrieben am 28. Mai 2018 17:50:46
|
|
Hoppla, sorry, mein Fehler.
Ich sollte aufhören Forenbeiträge nur zu überfliegen und zwischen Tür und Angel zu beantworten... |
Information: |
PHP Version: 7.2.x • MySQL Version: 8.0 • PHP-Fusion: IUP-FIX-PHP8 |
|
|
|
TBR |
Geschrieben am 28. Mai 2018 18:52:02
|
|
hi,
mit dem code, zeigt er mir das Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE 'user_id' = '1'' at line 1 im online panel an und das return $result->num_rows; im fehlerlog.
wenn ich mit $user['user_group'] versuche, dann zeigt er mir zumindest schon mal ".1" an und wenn ich aus der gruppe rausgehe, dann zeigt er nichts an.
bei dem code vom systemweb zeigt er nur an dass man in der gruppe ist und aktualisiert nicht bei veränderungen. |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
|
Krelli |
Geschrieben am 29. Mai 2018 12:10:44
|
|
Hab da einen Faselfehler gemacht. Die Zeile muss so sein:
$result2 = dbquery("SELECT * FROM `".DB_USERS."` WHERE `user_groups` REGEXP('^\\\.".$gruppen_id."$|\\\.".$gruppen_id."\\\.|\\\.".$gruppen_id."$') AND `user_id` = '".$user['user_id']."'");
Hab es auch oben im Beitrag korrigiert, so dass du den gesamten Code nochmal korrekt kopieren kannst. |
Information: |
PHP Version: 8.2.x • MySQL Version: Nicht ausgewählt • PHP-Fusion: IPv9-DE-MOD |
|
|
|
TBR |
Geschrieben am 29. Mai 2018 12:54:58
|
|
Nach einer Woche rum probieren und etliche Seiten durchsuchen scheint es endlich zu gehen. Solch ein Aufwand nur um was anzeigen zu lassen, Wahnsinn.
ABER es geht jetzt endlich!!
Ich danke Euch vielmals, da wäre ich im Leben nicht alleine drauf gekommen |
Information: |
PHP Version: Nicht ausgewählt • MySQL Version: Nicht ausgewählt • PHP-Fusion: Nicht ausgewählt |
|
|
|
Krelli |
Geschrieben am 29. Mai 2018 15:53:10
|
|
Find es immer toll, wenn am Ende ein Feedback zurück kommt wie bei dir.
Können sich manch andere ne Scheibe von abschneiden. |
Information: |
PHP Version: 8.2.x • MySQL Version: Nicht ausgewählt • PHP-Fusion: IPv9-DE-MOD |
|
|