[TYPO3-german] Post request + typo3
Widmann, Manfred
mpunktw at gmx.net
Tue Feb 5 09:12:03 CET 2008
Hi David!
Evtl. auch einen Blick in die typo3.dev Newsgroup deises Servers werfen, da
habe ichb gerade eine ähnliche Anfrage gestellt.
lg
Manfred
"David Aichinger" <david at liwest.at> schrieb im Newsbeitrag
news:mailman.1.1202153166.6472.typo3-german at lists.netfielders.de...
> also bis jetzt hatten wir bisschen aneinander vorbeigeredet aber
> mittlerweile erkenne ich was du mir sagen willst ^^
> was mich wieder dazu führt dass ich doch diese auth services verwenden
> muss :-/ kannst du mir ne kurz zusammenfassung liefern wie das läuft?
> ich hab nämlich nicht mehr all zu lange zeit für diesen Login und würde
> mich nur ungern durch diese extension durchwälzen....
>
> "Benno Weinzierl" <benno_weinzierl at web.de> schrieb im Newsbeitrag
> news:mailman.1.1202151556.30053.typo3-german at lists.netfielders.de...
>> Curl ist eine Bibliothek mit der du u.a. HTTP-Anfragen stellen kannst.
>> Da dein PHP-Script, in dem du einen CURL-Request ausführst auf dem Server
>> selbst ausgeführt wird (und nicht wie Javascript auf dem Client)
>> wird dein Server einen CURL-Request (mit den POST-Variablen) an sich
>> selbst stellen. D.h. der Client (der user der die Seite besucht) bekommt
>> davon nichts mit.
>> Der Session-Cookie wird also nicht beim user erstellt => er ist auch
>> nicht eingeloggt. (Außer du überträgst irgendwie die Sessionid oder so)
>> Das kann also unmöglich funktionieren. Oder ich hab immernoch nicht
>> kapiert was du meinst :-)
>>
>>
>>
>> "David Aichinger" <david at liwest.at> schrieb im Newsbeitrag
>> news:mailman.1.1202070033.15208.typo3-german at lists.netfielders.de...
>>> Danke für deine antwort, ich habe allerdings schon rausgefunden, dass
>>> typo3
>>> auf 4 post variablen wartet fürn login, die eine is logintype, dann
>>> user,pass und pid der feuser-storage page
>>>
>>> ich möchte nach erfolgreichem login also lediglich die richtigen post
>>> variablen setzen, ohne extra ein formular per javascript füllen zu
>>> müssen
>>> wie es jetzt ist, habe auch schon in einem Forum herrausgefunden, dass
>>> dies
>>> per Curl ganz gut ginge
>>>
>>>
>>>
>>> "Benno Weinzierl" <benno_weinzierl at web.de> schrieb im Newsbeitrag
>>> news:mailman.1.1202056734.17325.typo3-german at lists.netfielders.de...
>>>> Noch etwas:
>>>>
>>>> Wenn ich das richtig verstehe dann willst du einen User durch deine
>>>> Extension authentifizieren.
>>>> Da das untere Script (PHP) aber Serverseitig läuft stellt der Server
>>>> eine Anfrage an sich selbst und loggt sich bei sich selbst ein, nicht
>>>> den user.
>>>> Das kann also sowieso nicht funktionieren. Die Soket-Verbindung wird ja
>>>> vom Server aus initialisiert.
>>>>
>>>> "Benno Weinzierl" <benno_weinzierl at web.de> schrieb im Newsbeitrag
>>>> news:mailman.1.1202055868.11398.typo3-german at lists.netfielders.de...
>>>>> Hallo David,
>>>>>
>>>>> ich glaube du brauchst da eher einen Typo3-Service (auth).
>>>>> Damit kannst du eigene Authentifizierungs-Methoden implementieren.
>>>>>
>>>>> Ein Beispiel zum abschauen:
>>>>> cc_iplogin_fe
>>>>> Da werden die User über IP authetifiziert (nur für Entwicklung
>>>>> benutzen, ist natürlich nicht sicher).
>>>>>
>>>>> Gruß, Benno
>>>>>
>>>>> P.S.: Der content steht immer über allem wenn er durch "echo" von
>>>>> einer Extension zurückgegeben wird. Den content musst du mit return
>>>>> zurückgeben.
>>>>>
>>>>>
>>>>>
>>>>> "David Aichinger" <david at liwest.at> schrieb im Newsbeitrag
>>>>> news:mailman.1.1201957384.31611.typo3-german at lists.netfielders.de...
>>>>>> Hi leute,
>>>>>>
>>>>>> Ich würde gerne ein paar Post daten OHNE Formular (genauer gesagt
>>>>>> logintype evt. für nen eigenen FE login) von meiner extension
>>>>>> rausjagen.
>>>>>>
>>>>>> Ich hab dazu auch ein passendes php script gefunden, dass sich leider
>>>>>> als total unbrauchbar erwiesen hat, da bei mir dann der Interne
>>>>>> bereich samt menü im Content angezeigt wird und ich über meinem
>>>>>> richtigen content den http request stehen hab.
>>>>>>
>>>>>> Code hierzu:
>>>>>> <?php
>>>>>>
>>>>>> function PostToHost($host, $path, $referer, $data_to_send) {
>>>>>> $fp = fsockopen($host, 80);
>>>>>>
>>>>>> fputs($fp, "POST $path HTTP/1.1\r\n");
>>>>>> fputs($fp, "Host: $host\r\n");
>>>>>> fputs($fp, "Referer: $referer\r\n");
>>>>>> fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
>>>>>> fputs($fp, "Content-length: ". strlen($data_to_send) ."\r\n");
>>>>>> fputs($fp, "Connection: close\r\n\r\n");
>>>>>> fputs($fp, $data_to_send);
>>>>>>
>>>>>> while(!feof($fp)) {
>>>>>> $res .= fgets($fp, 128);
>>>>>> }
>>>>>>
>>>>>> fclose($fp);
>>>>>>
>>>>>> return $res;
>>>>>> }
>>>>>>
>>>>>> $data = "logintype=login.........";
>>>>>> $desthost = "xxxxx.at";
>>>>>> $destpath = "/index.php?id=1235";
>>>>>> $destreferer = "http://xxxxxx.at/index.php";
>>>>>>
>>>>>>
>>>>>> echo(PostToHost(
>>>>>> $desthost,
>>>>>> $destpath,
>>>>>> $destreferer,
>>>>>> $data
>>>>>> ));
>>>>>> echo $x;
>>>>>>
>>>>>> ?>
>>>>>> <---- hab diese version erstmal gar nicht in die extension eingebaut
>>>>>> sondern direkt als php code in verbindung mit der php_content
>>>>>> extension versucht. Da das kein bisschen hinhaut frage ich mich, wie
>>>>>> man es noch lösen könnte.
>>>>>>
>>>>>> Zusätzliche Informationen:
>>>>>>
>>>>>> Login direkt erfolgt über dritt-server-webservice und nach erfolg
>>>>>> wollte ich einfach post daten senden mit logintype user und pw (vom
>>>>>> Kunden wurden nämlich dummy FE user gewünscht) Zurzeit habe ich es
>>>>>> so gelöst, dass ich einfach ein hidden formular mit dummy daten fülle
>>>>>> und ausführe, was aber 1. programmierseitig extrem hässlich ist und
>>>>>> 2. erfolgt dann ein 2. mal die abfrage ob man das pw speichern möchte
>>>>>>
>>>>>> Wüsste jemand raT?
>>>>>> Danke im Vorraus
>>>>>>
>>>>>> mfg
>>>>>> David Aichinger
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>
More information about the TYPO3-german
mailing list