Seite 1 von 1
Users E-Mail Adresse ändern
Verfasst: 27.02.2012 23:40
von Thomasio
Ich habe mein phpBB erfolgreich in meine Seite integriert, Signup und Login umgeleitet auf meine eigenen Scripts, usw., war eine Menge Arbeit, aber es funktioniert.
Dreierlei ist mir noch übrig geblieben, wo mir ein paar Details nicht klar sind.
1) Welche Felder in der DB sind von einer Änderung der E-Mail Adresse betroffen?
Sind das nur die Felder user_email und user_email_hash in der Tabelle users, oder kommt die E-Mail-Adresse noch anderswo vor?
2) Welche Felder in der DB sind von einer Änderung des Passworts betroffen?
Ist das nur das Feld user_password in der Tabelle users, oder kommt das Passwort noch anderswo vor?
3) Wie logge ich programmatisch einen User aus ohne ihn zu deaktivieren?
Re: Users E-Mail Adresse ändern
Verfasst: 02.03.2012 11:25
von Thomasio
Update:
1 und 2 gelöst, 3 nur halbwegs.
Ausloggen kann ich den User mit session_kill(), aber nur wenn der User nur einen PC hat und die Änderung selbst macht.
Wenn der User 2 PCs hat oder die Änderung von einem Admin an einem anderen PC vorgenommen wird, bleibt der User trotz ungültigem Passwort eingeloggt.
Re: Users E-Mail Adresse ändern
Verfasst: 02.03.2012 11:38
von modernist
Du kannst auch den entsprechenden Datensatz zur User-ID in der Sitzungstabelle löschen oder du loggst alle User über ACP -> Allgemein -> Sitzungsdaten löschen aus.
Re: Users E-Mail Adresse ändern
Verfasst: 02.03.2012 13:40
von Thomasio
Danke für die Antwort, hilft aber leider nicht.
Vielleicht war ich nicht klar genug mit dem, was ich machen will.
Ich habe auf meiner Seite ein PHP Script, völlig unabhängig von phpBB, wo sowohl die User, als auch die Admins meiner Seite Mailadressen und Passwörter ändern können.
Wenn ein User oder ein Admin da z.B. ein Passwort ändert, soll mein Script dieselbe Änderung für denselben User auch in der users Tabelle von phpBB vornehmen.
Das funktioniert prima, solange der User selbst das macht und er nur einen PC hat, weil ich ihn dann mit session_kill() ausloggen kann.
Hat der User aber einen Zweit-PC oder ein Admin nimmt die Änderung vor, kann ich höchstens die session aus der sessions Tabelle löschen, aber ich komme nicht an sein Cookie ran, weil das auf einem anderen PC liegt.
Der User bleibt also trotz ungültigem Passwort eingeloggt, weil die Identifizierung über das Cookie das Passwort nicht checkt.
Ich selber als Forum-Admin bin natürlich nicht ständig online, ich kann auch nicht ständig prüfen, ob irgendwer gerade sein Passwort geändert hat und selbst wenn, ich will bestimmt nicht sämtliche User ausloggen, nur weil einer davon sein Passwort geändert hat.
Re: Users E-Mail Adresse ändern
Verfasst: 02.03.2012 16:47
von modernist
Thomasio hat geschrieben:Der User bleibt also trotz ungültigem Passwort eingeloggt, weil die Identifizierung über das Cookie das Passwort nicht checkt.
Da hast du doch schon den Ansatzpunkt. Der Server muß den Keks auslesen und vergleichen, ob dieser mit dem aktuell hinterlegten Paßwort erstellt wurde. Wenn nicht, dann wird die Login-Maske angezeigt.
Re: Users E-Mail Adresse ändern
Verfasst: 03.03.2012 08:52
von Thomasio
Ähem ja, aber wie mache ich das?
Vermutlich muss ich dazu die sessions.php ändern, aber ich bin kein phpBB Insider.
Re: Users E-Mail Adresse ändern
Verfasst: 03.03.2012 11:09
von Miriam
Schon probiert:
Code: Alles auswählen
delete from phpbb_sessions where session_user_id = 815;
delete from phpbb_sessions_keys where user_id = 815;
*die Usernummer 815 musst du noch anpassen.
Re: Users E-Mail Adresse ändern
Verfasst: 03.03.2012 12:24
von Thomasio
Danke Miriam.
Ich bin gerade selber auch drauf gekommen.
Ich muss nicht nur die sessions löschen, sondern auch die sessions_keys, dann funktioniert das alles wunderbar.
Manchmal sieht man einfach den Wald vor lauter Bäumen nicht.
Danke an alle für eure Hilfe.