Zum Inhalt springen

Logout als Link anstatt Formular?

Erstellt am 15. Februar 2006 · 8 Antworten · letzte Antwort am 7. November 2006

Tags: Frage

marksta ·

Hallo zusammen

Hat jemand eine Idee wie der Link für ein Logout aussehen muss, damit dies klappt?

Ein Link mit &logintype=logout&pid=123 (pid = Sysfolder mit Usern) scheint zumindest bei mir nicht zu funktionieren...

Freue mich über jeden Hinweis!

Dank & Gruss
Markus

steffenk ·

Ich mache es mit einer Form und POST, aber Du kannst auch einen Link nehmen und mit ihm die Form absetzen.

# Loginbox auf allen Seiten, wird innerhalb der Seite zugewiesen
[usergroup = *] 
# Logout
temp.login = TEXT 
temp.login.data  = TSFE : id 
temp.login.wrap (  
	<div id="logoutbox" style="width:190px">
	<form action="index.php?id= | " method="post" style="margin-top:0pt; margin-bottom:0pt"> 
	<input type="hidden" name="logintype" value="logout" /> 
	<input type="submit" name="submit" title="Abmelden" value="Abmelden" style="height:20; width:130; border:solid 1px #A0A0A0; background-color:#FFFFFF; font-size:12px;" />
	</form>
	</div> 
) 
[else]
# Login, Id 13 ist die Anmeldeseite, Id 11 ist der Sys-Ordner Benutzer 
temp.login = TEXT 
temp.login.data  = TSFE : id 
temp.login.wrap ( 
	<div id="loginbox" style="width:190px">
	<form action="index.php?id=13" method="post">
	<input name="user" class="txt2" type="text" id="user" title="Benutzername" onfocus="if (this.value==this.defaultValue) this.value=''" value="Benutzername" /> 
	<input name="pass" class="txt2" type="password" id="pass" title="Passwort" onfocus="if (this.value==this.defaultValue) this.value=''" value="Passwort" /> 
	<input name="image" type="image" title="Anmelden" src="fileadmin/images/login.gif" alt="Login" />
	<input type="hidden" name="redirect_url" value="index.php?id= | " /> 
	<input type="hidden" name="logintype" value="login" />
	<input type="hidden" name="pid" value="11" /> 
	</form>
	<a href="/intern/registrierung/">registrieren</a>
	</div>
) 
[global]
marksta ·

Hallo SteffenK

Danke für den Tipp, ich hoffe aber immer noch auf eine noch elegantere Lösung mittels Link (d.h. ohne Formular dahinter)... Sollte doch eigentlich möglich sein? Oder reagiert TYPO3 nur auf POST Requests wenn's ums Logout geht?

Gruss
Markus

marksta ·

Problem gelöst 🙂

Ich hatte das Login ja als Link auf eine "externe" Seite, damit ich den Parameter "&logintype=logout" anhängen konnte. Leider hatte ich übersehen, dass bei dieser Multi-Domain Installation der Logout-Link auf die falsche Domain gezeigt hat.

Gruss
Markus

sehfahrer ·
marksta schrieb

Problem gelöst 🙂

Ich hatte das Login ja als Link auf eine "externe" Seite, damit ich den Parameter "&logintype=logout" anhängen konnte. Leider hatte ich übersehen, dass bei dieser Multi-Domain Installation der Logout-Link auf die falsche Domain gezeigt hat.

Mich würde Deine konkrete Lösung auch interessieren. Ich habe aus den Postings zu diesem Thema jetzt folgenden Link rausgelesen:

123 ist die Seiten-ID der Login/Logout-Seite, auf der das Inhaltselement Besseres Anmeldeformular sitzt (sonst nichts).

Diesen habe ich auf einen extra Menüeintrag (Seitentyp "Externe URL") gelegt. Leider hängt mein Browser dann endlos dabei fest, auf die Antwort des Servers zu warten ...

Wo liegt mein Fehler?

marksta ·

Hallo Sehfahrer

Zwei spontane Ideen:

Beim Seiten Typ externe URL sollte die URL ohne "http://" angegeben werden, dass kann man ja gleich unten dran auswählen. Falls Du dies nicht sowieso schon gemacht hast.

Zweie Idee: Ich denke, dass TYPO3 selbst den Logout vornimmt, auf der Zielseite müsste daher möglicherweise kein "newloginbox" sein.

Lass es mich (uns) doch wissen wenn Du da neue Erkentnisse hast.

Gruss
Markus

McGregor ·

Nur zur Vollständigkeit

<a href="start.html?pid=73&logintype=logout">Logout</a>

Man gibt eine bestimmte Seite an, die angezeigt werden soll, wenn man sich ausgeloggt hat (bei mir start.html).
Dann muss man die pid des Sys-Folders angeben, in denen die User liegen und den Typ 'logintype' auf logout setzen.
Fertig

Grüße
McGregor

lemon ·

Hmm, ich habe eine zweisprachige Seite. Wenn ich den im Seitenheader den Link so angebe

index.php?pid=14&logintype=logout

komme ich nach dem Logout auf die erste Seite der 1. Sprache.
Allerdings auch, wenn ich gerade in der 2. Sprache war, da es ja nur einen Header pro Seite und nicht pro Sprache gibt.

Hat hier jemand eine Idee?

Viele Grüße

Lemon