Welches Profil wird betrachtet Snippet

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Emma
Gesperrt
Beiträge: 133
Registriert: 30.09.2011 17:53

Welches Profil wird betrachtet Snippet

Beitrag von Emma »

Hallo,

ich wollte gerade mal dieses "kleine" Snippet testen:
viewtopic.php?f=85&t=199638

Hier steht aber als Warnung bei gut besuchten Foren kann das hoch belasten. 2 kleine Fragen: Kann man es so anpassen, dass nur Administratoren/innen sehen können welches Profil betrachtet wird und die "normalen" Nutzer den normalen Text sehen.
2. Wenn 1. geht ich bin die einzige Administratorin, belastet das dann auch sehr stark die Datenbank, wenn nur ich das sehe?

Danke im Voraus.
Charlie_M
Mitglied
Beiträge: 1210
Registriert: 17.07.2008 13:09
Kontaktdaten:

Re: Welches Profil wird betrachtet Snippet

Beitrag von Charlie_M »

Ich nehme an du hast die 1. Variante verwendet:

Suche:

Code: Alles auswählen

case 'memberlist':
           parse_str($row['session_page'], $sess_get);
                     
           if (array_key_exists('u', $sess_get) && strpos($row['session_page'], 'mode=viewprofile'))
         {
            $msql = 'SELECT username
                   FROM ' . USERS_TABLE . '
               WHERE user_id = ' . (int) $sess_get['u'];
            $mresult = $db->sql_query($msql);
                $viewed_username = $db->sql_fetchfield('username');
            $db->sql_freeresult($mresult);
            
            $location = $user->lang['VIEWING_MEMBER_PROFILE'] . ' (' . $viewed_username . ')';
            $location_url = append_sid("{$phpbb_root_path}memberlist.$phpEx" , 'mode=viewprofile&u=' . $sess_get['u']);
           }
           else
         {
                 $location = (strpos($row['session_page'], 'mode=viewprofile') !== false) ? $user->lang['VIEWING_MEMBER_PROFILE'] : $user->lang['VIEWING_MEMBERS'];
                $location_url = append_sid("{$phpbb_root_path}memberlist.$phpEx");
         }
      break;
Ersetze mit:

Code: Alles auswählen

		case 'memberlist':
		if ($auth->acl_get('a_'))
		{
           parse_str($row['session_page'], $sess_get);
                     
           if (array_key_exists('u', $sess_get) && strpos($row['session_page'], 'mode=viewprofile'))
         {
            $msql = 'SELECT username
                   FROM ' . USERS_TABLE . '
               WHERE user_id = ' . (int) $sess_get['u'];
            $mresult = $db->sql_query($msql);
                $viewed_username = $db->sql_fetchfield('username');
            $db->sql_freeresult($mresult);
            
            $location = $user->lang['VIEWING_MEMBER_PROFILE'] . ' (' . $viewed_username . ')';
            $location_url = append_sid("{$phpbb_root_path}memberlist.$phpEx" , 'mode=viewprofile&u=' . $sess_get['u']);
           }
		   }
           else
         {
                 $location = (strpos($row['session_page'], 'mode=viewprofile') !== false) ? $user->lang['VIEWING_MEMBER_PROFILE'] : $user->lang['VIEWING_MEMBERS'];
                $location_url = append_sid("{$phpbb_root_path}memberlist.$phpEx");
         }
      break;
Wenn 1. geht ich bin die einzige Administratorin, belastet das dann auch sehr stark die Datenbank, wenn nur ich das sehe?
Wennst nicht nachschaust nicht.
Es wird in der DB entsprechend der User_ID der zugehörige Nick des betrachteten Users auszulesen.
Je mehr User zu dem Zeitpunkt gerade Profile anschauen desto mehr Abfragen werden erzeugt.
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12178
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Welches Profil wird betrachtet Snippet

Beitrag von Mahony »

Hallo
Du könntest auch den Profile Views List MOD installieren.
Der MOD speichert die Profile-Ansichten.

Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
Emma
Gesperrt
Beiträge: 133
Registriert: 30.09.2011 17:53

Re: Welches Profil wird betrachtet Snippet

Beitrag von Emma »

Ich habe erstmal den MOD probiert, zum Snippet komme ich später. Beim Mod gibt es bei der Installation leider einen Error:

Code: Alles auswählen

Index name 'phpbb_profile_views_profile_user_id' on table 'phpbb_profile_views' is too long. The maximum is 24 characters.
Was kann das sein. Irgendetwas ist zu lang, da muss man wie ich das interpretiere irgendwo ein Limit hochsetzen für die Installation.
===============================================================================
Snippet: In welcher Datei muss ich die Änderungen vornehmen? Viewonline? Da scheint es den Text nicht zu geben. :oops:
Charlie_M
Mitglied
Beiträge: 1210
Registriert: 17.07.2008 13:09
Kontaktdaten:

Re: Welches Profil wird betrachtet Snippet

Beitrag von Charlie_M »

Ich bin davon ausgegangen du hast den Mopd schon installiert:
Öffne viewonline.php
Suche:

Code: Alles auswählen

case 'memberlist':
         $location = (strpos($row['session_page'], 'mode=viewprofile') !== false) ? $user->lang['VIEWING_MEMBER_PROFILE'] : $user->lang['VIEWING_MEMBERS'];
         $location_url = append_sid("{$phpbb_root_path}memberlist.$phpEx");
      break;
ersetzen mit (nur für Admin):

Code: Alles auswählen

      case 'memberlist':
      if ($auth->acl_get('a_'))
      {
           parse_str($row['session_page'], $sess_get);
                     
           if (array_key_exists('u', $sess_get) && strpos($row['session_page'], 'mode=viewprofile'))
         {
            $msql = 'SELECT username
                   FROM ' . USERS_TABLE . '
               WHERE user_id = ' . (int) $sess_get['u'];
            $mresult = $db->sql_query($msql);
                $viewed_username = $db->sql_fetchfield('username');
            $db->sql_freeresult($mresult);
            
            $location = $user->lang['VIEWING_MEMBER_PROFILE'] . ' (' . $viewed_username . ')';
            $location_url = append_sid("{$phpbb_root_path}memberlist.$phpEx" , 'mode=viewprofile&u=' . $sess_get['u']);
           }
         }
           else
         {
                 $location = (strpos($row['session_page'], 'mode=viewprofile') !== false) ? $user->lang['VIEWING_MEMBER_PROFILE'] : $user->lang['VIEWING_MEMBERS'];
                $location_url = append_sid("{$phpbb_root_path}memberlist.$phpEx");
         }
      break;
==================================================================================================

Zum Fehler des Mods => http://www.phpbb.com/customise/db/mod/p ... or-t_93423
Emma
Gesperrt
Beiträge: 133
Registriert: 30.09.2011 17:53

Re: Welches Profil wird betrachtet Snippet

Beitrag von Emma »

Wunderbar ich danke dir. Beides funktioniert. Beim ersten Mod kann ich auf der Onlineliste nun alles sehen und andere Nutzer nicht. :evil: Der Mod funktioniert auch wunderbar, der Hinweiß auf phpBB.com hat funktioniert. So eine Meldung hatte ich schon oft und ich wusste nicht warum danke jetzt weiß ich das in Zukunft auch. :D
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12178
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Welches Profil wird betrachtet Snippet

Beitrag von Mahony »

Hallo
Für die deutschen Sprachdateien zum Profile Views MOD schau mal hier http://www.chalong.de/viewtopic.php?f=6&t=309


Grüße: Mahony
Taekwondo in Berlin
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
Emma
Gesperrt
Beiträge: 133
Registriert: 30.09.2011 17:53

Re: Welches Profil wird betrachtet Snippet

Beitrag von Emma »

Oh ja danke ich hatte meinen Beitrag gerade eben sogar gelöscht, weil ich selbst fündig geworden bin sogar dort und noch woanders. Anfangs hatte ich nix gefunden. Ich danke dir für deine Hilfe. :ugeek:
Antworten

Zurück zu „[3.0.x] Mod Support“