Alte Benutzer einbeziehen
am 13.11.2009 - 23:20 Uhr in
Hey, ich hab eine recht spezielle Frage und wusste nicht wonach ich suchen soll. Hoffentlich bin ich in diesem Bereich richtig.
Ich hab ein altes Forum und würde gerne die Benutzer mit rüber in ein neues Drupal nehmen. Dort gibt es auch schon Benutzer. Es kann also sein, dass im alten Forum ein Benutzer den gleichen Namen hat wie im neuen. Das soll aber auch durchaus möglich sein. Darum dachte ich mir jetzt, ich gebe den Benutzernamen aus dem alten Forum alle einn Prefix, z.B. "alt_Klaus". Beim Login soll dann zusätzlich eine Checkbox mit "altes Forum login" stehen. Klaus kann sich dann einfach als Klaus anmelden, also mit "Klaus" und "*****" und es wird dann intern "alt_" vor den Namen gehängt wenn er die Checkbox aktiviert. In Drupal soll Klaus dann allerdings überall als "Klaus (altes Forum)" auftauchen.
Ist das irgendwie zu bewerkstelligen?
Wenn das so zu kompliziert ist, hatte ich die Idee anstelle des Prefixes gleich Klaus als "Klaus (altes Forum)" und nicht als "alt_Klaus" in die DB zu schreiben. Dann wäre das zumindest ein Schritt weniger. Allerdings soll er sich nachwievor als Klaus und mit der Checkbox anmelden können.
Bis jetzt hab ich in der Drupal-API gesehen, dass es verschiedene DB-Methoden gibt. Müsste ich diese alle ändern? Es soll ja danach auch jedes Modul noch funktionieren ohne verändert werden zu müssen.
Ich hoffe ihr könnt mir helfen, danke! :)
- Anmelden oder Registrieren um Kommentare zu schreiben
Oh, beim schreiben der Frage
am 13.11.2009 - 23:29 Uhr
Oh, beim schreiben der Frage kommt man meist auf die besten Ideen. Ich denke ich hab eine Lösung:
Benutzernamen wie "Klaus (alt)" sind wegen den Klammer ja nicht möglich zu registrieren (zumindest bei meinem Drupal). Daher kann auch keine bereits so heißen. Wenn ich jetzt alle Benutzer mit " (alt)" in die DB übertrage, könnte man sich ja so einloggen mit "Klaus (alt)". Ob ich das jetzt noch verhindere weiß ich nicht aber zumindest kann ich ja den Login so verändern, dass bei resetztem Häkchen ein "Klaus" eigentlich mit "Klaus (alt)" eingeloggt wird. Danach erscheint er auch überall als "Klaus (alt)" und alles ist gut.
Seht ihr da noch irgendwelche Probleme?
Danke!
Du kannst aus der Drupal
am 14.11.2009 - 00:07 Uhr
Du kannst aus der Drupal Datenbank die alten User über phpmyadmin exportieren (Tabelle User). Dann hast Du einen Text, der sich mit einem Editor modifizieren läßt. Du kannst die Usernamen ändern, aber das ist nicht der Punkt. Alle alten Artikel sind mit der UserID (uid) verknüpft und die kannst Du ja nicht übernehmen, da schon wieder neu vergeben (in vielen Fällen zumindest). Hier hast Du nun Dein Problem. Machst Du die alten User brauchbar, mußt Du diesen Usern eine neue ID verpassen, bevor Du die User wieder importierts, aber damit ist die Referenz zu alten Artikeln weg. Also überlege noch mal genau, was Du willst.
Beste Grüse
Werner
Hi, danke erstmal. Die
am 14.11.2009 - 00:17 Uhr
Hi, danke erstmal.
Die Artikel aus dem alten Forum brauch ich nicht mehr. Die alten Benutzer sollen sich nur im neuen Drupal einloggen können. Ich würde also tatsächlich einfach neue Benutzer mit den alten Passwörtern anleden und an den namen halt " (alt)" hängen. Ich frag mich nur ob ich jetzt noch etwas, vorallem beim Login, übersehen habe. Die alten Benutzer sollen sich ja wie gesagt mit dem alten Namen + Checkbox einloggen können...
Dazu mußt Du allerdings den
am 14.11.2009 - 00:24 Uhr
Dazu mußt Du allerdings den Login-Prozess überschreiben (ein eigenes Login Modul einsetzen oder mit hook_form_alter die Login-Form umprogrammieren). Damit bekommst Du Deine Checkbox und die Namesänderung hin.
Beste Grüße
Werner
Alles klar danke, dann werd
am 14.11.2009 - 00:32 Uhr
Alles klar danke, dann werd ich es so machen :)