Ursprünglich aufgerufene Seite nach Login

am 28.08.2009 - 11:14 Uhr in
Hallo,
wenn die Benutzer in nicht eingeloggtem Zustand eine Seite anrufen und sich erst danach einloggen, möchte ich, dass sie auf die ursprünglich aufgerufene Seite gelangen.
Geht das auch ohne zusätzliches Modul? Kann ich das irgendwo einstellen?
Vor dem Upgrade auf Drupal 6 war das bei meinem System so, ohne dass ich etwas geändert hätte.
Danke und Gruss
Adriana
- Anmelden oder Registrieren um Kommentare zu schreiben
Ich mache das so: Auf jeder
am 28.08.2009 - 14:34 Uhr
Ich mache das so:
Auf jeder Seite steht ein Link auf das Login (user/login). Als zusätzlicher Parameter enthält er eine Destination. Die wird dynamisch von der gerade angezeigten Seite gefüllt. Also z.B. user/login?destination=irgendwo/tief/versteckt
ciao, Ronald
Danke für Deine Antowort-
am 31.08.2009 - 14:41 Uhr
Danke für Deine Antowort- bevor ich Deine Lösung ausprobiere, frage ich doch nochmals nach: entspricht meine Anforderung (wenn man eine bestimmte Seite aufgerufen hat, zu der man ohne Login keinen Zugang hat, gelangt man nach dem Login direkt drauf) nicht dem Standard-Verhalten?
Seit dem Upgrade passiert bei meinem System folgendes:
z.B. für die Seite xy habe ich die Zugriffsrechte, habe sie aber aufgerufen, bevor ich mich eingeloggt habe. Anschliessend logge ich mich ein und bekomme danach eben die Fehlermeldung 403, statt wie früher die aufgerufene Seite
Gruss
Adriana
Das ist auch bei D6 so.
am 31.08.2009 - 15:09 Uhr
Das ist auch bei D6 so. Redirect nach Login auf urspruengliche Seite bei der man haette eingeloggt sein muessen.
Habe es eben in einer frischen D6 Installation getestet.
Ohne irgend etwas zu konfigurieren.
------------------------
Quiptime Group
Vielen Dank für die
am 31.08.2009 - 15:16 Uhr
Vielen Dank für die Antwort. Hast Du eine Ahnung woran, das liegen könnte, dass das nicht mehr funktioniert? Ich habe kürzlich festgestellt, dass es nicht mehr so ist... Falls Du irgendwelche Vermutungen oder Hinweise hast, wäre ich sehr dankbar...
Gruss
Adriana
Normalerweise enthaelt die
am 31.08.2009 - 15:33 Uhr
Normalerweise enthaelt die Loginform bereits den destination Parameter - bei Login nach Aufruf einer Seite die Login verlangt.
Kann man schnell mit Firebug pruefen.
Beispielcode
<form id="user-login-form" method="post" accept-charset="UTF-8" action="/admin/build/imagecache?destination=admin%2Fbuild%2Fimagecache">
Wenn Du es eben erst festgestellt hast koennte Dir der Drupal-Cache einen Streich spielen. Hast Du das Develmodul aktiv dann leere mal damit den Cache.
Oder alternativ mittels PHPmyAdmin alle Cachetabellen leeren.
Und um es komplett zu machen die Sessiontabelle auch leeren.
Wenn das nicht hilft habe ich grad auch keine Idee.
Welche Loginform verwendest Du?
------------------------
Quiptime Group
Vielen Dank!! Habe im
am 31.08.2009 - 21:35 Uhr
Vielen Dank!!
Habe im HTML-Code gesehen, dass die destination offenbar falsch angegeben ist:
node%2F1841 statt node/194 ...
Hat jemand eine Ahnung weshalb?
(Ich nehme an, das ist der Fehler? Oder macht es trotzdem Sinn, die Cache-Tabellen zu leeren?)
Gruss
Adriana
node%2F1841 statt
am 31.08.2009 - 22:13 Uhr
node%2F1841 statt node/194
%2F ist der /
Siehe den von mir geposteten Code. Der entstammt einem Livebeispiel.
Cachetabellen leeren bei obskuren Problemen kann nicht schaden und manchmal Probleme beseitigen bei denen man Stundenlang gesucht hat. Cachetabellen leeren ist kein All-Heilmittel aber manchmal die Erloesung.
------------------------
Quiptime Group
...auch bekannt als "Türen
am 31.08.2009 - 23:32 Uhr
...auch bekannt als "Türen auf, Türen zu. Wagen läuft." in der Autowerkstatt. :-)
Grüße, Ronald
Vielen Dank- ich habe
am 01.09.2009 - 06:06 Uhr
Vielen Dank- ich habe inzwischen aber alle Caches gelöscht. Hat nichts genützt.
Anstelle, dass die destination* auf die aufgerufene Seite gesetzt würde wird destination= auf meine "Zugriff verweigert"-Seite gesetzt. (das war der Wert nach dem 2F- die nid eben dieser Seite),
Kann sich jemand erklären, wie das zustande kommt?
*im Login-Block
Gruss
Adirana