Berechtigung für Forenzugriff

Fragen rund um die Installation, Administration und Benutzung von phpBB.
Forumsregeln
Bitte im Thementitel den Präfix deiner phpBB-Version angeben
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Berechtigung für Forenzugriff

Beitrag von Mahony »

Hallo
Hexe_Mol hat geschrieben:1. wenn ein benutzer auf ein entsprechendes thema in forum 7 klickt, bekommt er die gewünschte meldung, 'Du musst dich vorstellen, um dieses Thema anzusehen.' allerdings wird er gleichzeitig auch aus dem forum abgemeldet (auch wenn der haken bei "angemeldet bleiben" gesetzt ist). gibt es auch die möglichkeit, dass er diese meldung bekommt, ohne abgemeldet zu werden? (denn er war ja vorher schon angemeldet)
Das liegt sicher nicht an den Änderungen..zumindest werde ich bei meinem Testforum nicht abgemeldet, wenn ich auf den Forum- Link klicke.
Hexe_Mol hat geschrieben:2. dein script prüft wohl, ob der user in forum 15 einen beitrag geschrieben hat, aber nicht, ob er dort ein THEMA ERÖFFNET hat. wenn es möglich ist, würde ich gerne das eröffnen eines (eigenen vorstellungs-)themas prüfen.
Wenn du auf einen Eintrag im Topic (also Thema) abfragen möchtest, dann ersetze in der Abfrage POSTS_TABLE mit TOPICS_TABLE und poster_id mit topic_poster.

Also so

Code: Alles auswählen

$sql = 'SELECT topic_poster
    FROM ' . TOPICS_TABLE . '
    WHERE forum_id = 15
        AND topic_poster = ' . $user->data['user_id'];
$result = $db->sql_query($sql);
$row = $db->sql_fetchfield('topic_poster');
$db->sql_freeresult($result);


if ($forum_id == 7 && !$row )  
{
   // Setup user environment so we can process lang string
   $user->setup('viewtopic');
        login_box('', $user->lang['LOGIN_VORSTELLUNG']);
} 

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.
Hexe_Mol
Mitglied
Beiträge: 164
Registriert: 09.02.2010 18:19

Re: Berechtigung für Forenzugriff

Beitrag von Hexe_Mol »

Mahony hat geschrieben:Das liegt sicher nicht an den Änderungen..zumindest werde ich bei meinem Testforum nicht abgemeldet, wenn ich auf den Forum- Link klicke.
beim klick auf den forenlink (also die viewforum.php) nicht, aber wenn man dort dann ein einzelnes thema (also die viewtopic.php) anklickt, wird man abgemeldet.

danke für deine hilfe! (hier fehlt ein smilie, der dir blumen überreicht....)

da fällt mir doch glatt noch eine frage ein.....
lässt sich dein code auch so modifizieren, dass er nur be neu registrierten mitgliedern greift und nicht bei den "alten hasen"? diese haben teilweise schon mehrere tausend beiträge, aber nicht jeder hat sich damals auch vorgestellt...
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12179
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Re: Berechtigung für Forenzugriff

Beitrag von Mahony »

Hallo
Hexe_Mol hat geschrieben:lässt sich dein code auch so modifizieren, dass er nur be neu registrierten mitgliedern greift und nicht bei den "alten hasen"? diese haben teilweise schon mehrere tausend beiträge, aber nicht jeder hat sich damals auch vorgestellt...
Das wäre dann eine Abfrage auf die Gruppen-ID für die neu registrierten Benutzer --> also wären wir wieder beim Auto Groups-MOD (siehe Seite 1 dieses Threads), denn der macht auch nichts anderes und eine andere Möglichkeit sehe ich da leider nicht das abzufragen.

P.S. Wegen dem ausloggen (falls das tatsächlich so ist bei deinen Benutzern) könnte man ja anstelle der
login_box('', $user->lang['LOGIN_VORSTELLUNG']); Ausgabe eine trigger_error('LOGIN_VORSTELLUNG'); Ausgabe machen.

Das würde dann so aussehen:

Code: Alles auswählen

$sql = 'SELECT topic_poster
    FROM ' . TOPICS_TABLE . '
    WHERE forum_id = 15
        AND topic_poster = ' . $user->data['user_id'];
$result = $db->sql_query($sql);
$row = $db->sql_fetchfield('topic_poster');
$db->sql_freeresult($result);


if ($forum_id == 7 && !$row )  
{
   // Setup user environment so we can process lang string
   $user->setup('viewtopic');
        trigger_error('LOGIN_VORSTELLUNG');
}
Achtung: Das ist noch ungetestet!

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.
Hexe_Mol
Mitglied
Beiträge: 164
Registriert: 09.02.2010 18:19

Re: Berechtigung für Forenzugriff

Beitrag von Hexe_Mol »

Mahony hat geschrieben:Achtung: Das ist noch ungetestet!

Grüße: Mahony
dankeschön!

ich werde es nachher ausprobieren und dann berichten....

bzgl der neuen mitglieder:
gibt es evtl die möglichkeit, das registrierungsdatum mit abzufragen und zu sagen, "betrifft die user, die sich nach dem 31.12.2016 registriert haben" o. ä. ?


*** nachtrag ***

funktioniert prima, nun werde die mitglieder nicht mehr ausgeloggt, sondern bekommen nur noch die entsprechende meldung angezeigt!

wenn es jetzt noch ne möglichkeit gibt, das registrierungsdatum mit abzufragen, wäre die funktion perfekt!
:)
Hexe_Mol
Mitglied
Beiträge: 164
Registriert: 09.02.2010 18:19

Re: Berechtigung für Forenzugriff

Beitrag von Hexe_Mol »

ich glaube, wir haben die lösung gefunden..... zumindest scheint es zu funktionieren und bisher kamen auch keine meldungen über fehler....

Code: Alles auswählen

$sql = 'SELECT topic_poster
        FROM ' . TOPICS_TABLE . '
        WHERE forum_id = 15
            AND topic_poster = ' . $user->data['user_id'];
    $result = $db->sql_query($sql);
    $row = $db->sql_fetchfield('topic_poster');
    $db->sql_freeresult($result);


    if ($forum_id == 7 && !$row && $user->data['user_regdate'] > 1483228799)
    {
       // Setup user environment so we can process lang string
       $user->setup('viewtopic');
            trigger_error('LOGIN_VORSTELLUNG');
    } 
Antworten

Zurück zu „Support-Forum“