Hallo, Gast! (Registrieren)

Wir wünschen allen Besuchern frohe Ostern!

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Passwortabfrage für ges. Forum
#1
Question 
Hallo alle zusammen!

Man kann ja Foren passwortschützen - kann man das irgendwie so machen, dass die Abfrage für das Passwort immer wieder kommt?
Bis jetzt sieht es so aus, dass man das Passwort dann einmal eintippen muß, und dann ist das Forum dauerhaft zugänglich. - Bei mir zumindest.

Ich betreue ein Forum für multiple Persönlichkeitsstörungen, und daher wäre es essenziell nötig gewissen Foren unter verschluss zu halten, außer wenn die entsprechende Persönlichkeit gerade "vorne" ist.

LG, GM!
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
#2
Hallo,

nach Erfolgreicher Eingabe des Passworts wird ein Cookie mit dem Namen forumpass[fid] gesetzt. Nur dadurch ist ein Zugang ohne weitere Angabe des Passworts möglich.

Wenn du das nicht möchtest, kannst du die Cookies mit einer Gültigkeit von z.B. einer Stunde versehen. Ersetze dazu diese Zeile in der Datei inc/functions.php
PHP-Code:
my_setcookie("forumpass[$fid]"md5($mybb->user['uid'].$mybb->input['pwverify']), nulltrue); 
durch
PHP-Code:
my_setcookie("forumpass[$fid]"md5($mybb->user['uid'].$mybb->input['pwverify']), time()+(60*60), true); 
Beachte aber, dass sich diese Änderung nur auf Cookies auswirkt, die nach der Änderung gesetzt werden!

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#3
Hi, Michael!

Ich bin wiedermal total begeistert über den schnellen guten Support hier!!!
Drei Daumen hoch!!! :-)

Wie kann ich das sagen wir mal für 24 Stunden verändern?

Muß da ein "60*" noch dazu?

Also so:
PHP-Code:
my_setcookie("forumpass[$fid]"md5($mybb->user['uid'].$mybb->input['pwverify']), time()+(60*60*60), true); 

Oder anders???

LG, GM!
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
#4
Hallo Grauer-Magier,

ersetze hierzu
PHP-Code:
my_setcookie("forumpass[$fid]"md5($mybb->user['uid'].$mybb->input['pwverify']), time()+(60*60*60), true); 
durch
PHP-Code:
my_setcookie("forumpass[$fid]"md5($mybb->user['uid'].$mybb->input['pwverify']), time()+(60*60*24), true); 
#5
Okay, danke dir linwinman! :-)
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
#6
Die Gültigkeitsdauer wird durch einen Unix Timestamp geregelt. Der Unix Timestamp enthält die Sekunden, gezählt ab 1.1.1970, für jede verstrichende Sekunde wird der Zähler eben eins höher gesetzt.
Das heißt mit time() erhälst du den momentanen Timestamp, also sozusagen das jetzt. Dann addierst du dazu eine gewisse Anzahl an Sekunden, um einen Timestamp der Zukunft zu kreiieren, wo dann der Cookie ablaufen soll. In disem Fall 60*60*24, also 60 Sekunden mal 60 Minuten mal 24 Stunden, so muss man sich das denken.
#7
Hallo ihr Lieben!

@ Dave: Vielen Dank für die Erklärung!

@ Michael+linwinman:

Folgendes Problem ist jetzt aufgetreten:
Ich betrete ein frisch angelegtes Forum, und muß Passwort eingeben - soweit okay.
Dann will ich Beitrag schreiben und muß schon wieder passwort eingeben (!?) - und will dann den Beitrag abschicken - muß ich nochmal (!) Passwort eingeben, mach ich und dann kommt Meldung "Ungültiges Forum" und Beitrag wird keiner geschrieben!
Was hab ich falsch gemacht? Woran könnte das liegen???

MfG, GM!
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
#8
Das Cookie wird scheinbar nicht gesetzt. Geht es ohne Code-Änderung?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#9
Du meinst wenn ich den Originalcode wiederherstelle?
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
#10
Ja. Toungue
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.