Beiträge: 952
Themen: 50
Registriert seit: 09.07.2006
MyBB-Version: 1.4.10
21.05.2008, 05:52
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)
Beiträge: 18.383
Themen: 257
Registriert seit: 09.02.2005
21.05.2008, 09:46
(Dieser Beitrag wurde zuletzt bearbeitet: 21.05.2008, 09:46 von Michael.)
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']), null, true);
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
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Beiträge: 952
Themen: 50
Registriert seit: 09.07.2006
MyBB-Version: 1.4.10
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)
Beiträge: 1.939
Themen: 18
Registriert seit: 30.06.2007
MyBB-Version: 1.6.6
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);
Beiträge: 952
Themen: 50
Registriert seit: 09.07.2006
MyBB-Version: 1.4.10
Okay, danke dir linwinman! :-)
Wer eine Wahrheit verbergen will, braucht sie nur offen auszusprechen - sie wird einem ja doch nicht geglaubt.
(Charles Talleyrand)
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.
Beiträge: 952
Themen: 50
Registriert seit: 09.07.2006
MyBB-Version: 1.4.10
26.05.2008, 12:05
(Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2008, 12:30 von Grauer-Magier.)
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)
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
Das Cookie wird scheinbar nicht gesetzt. Geht es ohne Code-Änderung?
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 952
Themen: 50
Registriert seit: 09.07.2006
MyBB-Version: 1.4.10
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)
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
Ja.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.