TYPO3-Testaccount
Testen Sie die aktuellste TYPO3-Version kostenlos und unverbindlich für einen Monat!

Jetzt testen!

Schulungen

felogin 1.3.0 & redirect_url keine Wirkung


Autor Nachricht
Verfasst am: 23. 02. 2010 [14:13]
jonas8
Themenersteller
Dabei seit: 09.05.2003
Beiträge: 243
Hallo Leute

Wir haben Probleme mit der felogin und redirect_url, die redirect_url wird einfach nicht übernommen.

Installation:
TYPO3: 4.3.2
felogin: 1.3.0

Beim Plugin: Nach Anmeldung (TS oder Flexform)
TypoScript: plugin.tx_felogin_pi1.redirectMode = getpost

URL:
http://myoda.a.customer.sylon.net/index.php?id=22&redirect_url=http://myoda.a.customer.sylon.net/index.php?id=6

oder:
http://myoda.a.customer.sylon.net/index.php?id=22&redirect_url=index.php?id=6

Aber das <input /> bleibt immer leer
<input type="hidden" name="redirect_url" value="" />

Haben wir noch etwas übersehen? Oder geht das so nicht?

Vielen Dank
Grüsse Jonas
ProfilWWWSkype
Verfasst am: 05. 03. 2010 [16:38]
Shaahira
Dabei seit: 01.08.2006
Beiträge: 121
Hallo,

ich habe auch gerade daran rumgedoktort.

Bei mir ging es, als ich noch den logintype angegeben hab, also .../index.php?logintype=login&redirect_url=index.php?id=1

Ich verstehe nicht ganz wieso, vielleicht ist das wieder was komisches, dass nur bei mir so ist, aber ein Versuch ist es vielleicht wert.

Viele Grüße
ProfilICQ
Verfasst am: 08. 03. 2010 [11:28]
jonas8
Themenersteller
Dabei seit: 09.05.2003
Beiträge: 243
Hallo

Ja genau, bei uns geht es jetzt auch. Mann muss (ist wohl noch ein Bug) &logintype = 1 mitgeben.

bei uns sieht das dann etwa so aus:
/index.php?L=0&id=44&L=0&logintype=login&redirect_url=index.php%3Fid%3D46

Das Problem ist nun, dass das logintype=login bewirkt, dass direkt ein Login-versuch gemacht wird und dies beim Login ein "Anmeldefehler" bewirkt.

Wir haben das so gelöst, dass wir die logintype per TS abfragen und wenn gesetzt, die Texte ausgeblendet werden.

Also so:
TYPOSCRIPT
[globalString = GP:redirect_url = index.php*]
plugin.tx_felogin_pi1 {
  _LOCAL_LANG.de {
    ll_error_header =
    ll_error_message =
  }
}
[end]


Viele Grüsse
ProfilWWWSkype
Verfasst am: 04. 06. 2010 [00:05]
rabe69
Dabei seit: 07.03.2006
Beiträge: 95
Hi,

ich habe mir mal die class.tx_felogin_pi1.php genauer angesehen und festgestellt, dass der Redirect über den GET-Parameter "redirect_url" deshalb nicht funktioniert, da im Loginformular immer der selbe Parameter auch als Hidden-Field, allerdings mit leerem Wert, generiert wird.
Da das Formular per POST verschickt wird, hat es Priorität bei der Auswertung,

Als Lösung habe ich in der Zeile 415 folgendes geändert:
PHP
$gpRedirectUrl = t3lib_div::_GP('redirect_url');

statt
PHP
$gpRedirectUrl = '';


Damit wird ein eventuell mit GET übergebener Parameter "redirect_url" in das Hidden-Field des Loginformulars übernommen, sodass der Redirect nach dem Absenden wie gewünscht funktioniert.

Ich werde das mal als Lösung in den TYPO3 Bugtracker reinschreiben, mal schaun was die (Sicherheits-)Experten dazu meinen.

ProfilWWW
Verfasst am: 04. 06. 2010 [09:24]
jonas8
Themenersteller
Dabei seit: 09.05.2003
Beiträge: 243
Hello

Okay, super.

Ich habe es hier in einer Testumgebung getestet.
Es scheint so zu funktionieren.

Liebe Grüsse
Jonas
ProfilWWWSkype
Verfasst am: 04. 06. 2010 [10:17]
rabe69
Dabei seit: 07.03.2006
Beiträge: 95
Besser noch ist es statt dessen Zeile 487-489 ändern in:
PHP
if (!$gpRedirectUrl && $this->redirectUrl) {
                        $gpRedirectUrl = $this->redirectUrl;
}


So wurde das Problem in TYPO3 4.4 Beta3 gelöst.

ProfilWWW