[Indy]IdHTTP -> Log In in Seite
-
Hi!
Habe schon das hier gefunden:
TStringList * ParaIn = new TStringList(); TMemoryStream * ParaOut = new TMemoryStream(); ParaIn->Add("action=1&login=UserName&pass=secret"); IdHTTP1->Request->ContentType = "application/x-www-form-urlencoded"; IdHTTP1->Post("http://test.de/login.php", ParaIn, ParaOut); Memo1->Lines->LoadFromStream(ParaOut);Verstehe das aber nicht ganz...
Ich möchte mich mit meinen Benutzerdaten in eine Seite einloggen.
Könnt ihr mir helfen?thx
Edit: hab noch was gefunden, was vielleicht wichtig ist, hier die input Felder:
type="text" name="login" class="i1"
type="password" name="passwort" class="i1"
type="submit" class="i1" value="Login"
-
Hallo
Ausgehend von den Quellcode must du eben in die Strings für "UserName" und für "secret" eben die Accountdaten eingeben die du willst. Und du must offenbar noch die Namen der Controls anpassen, das für "l" = "Login" und "pass" gleich "passwort" steht.
bis bald
akari
-
Habs nun soweit modifiziert:
TStringList * ParaIn = new TStringList(); TMemoryStream * ParaOut = new TMemoryStream(); /*type="text" name="login" class="i1" size=15> type="password" name="passwort" class="i1" size=15> type="submit" class="i1" value="Login"> */ ParaIn->Add("login=Ich&passwort=abc123&action=login"); IdHTTP->Request->ContentType = "application/x-www-form-urlencoded"; IdHTTP->Post("http://miloth.kampf-um-mittelerde.de/login.php", ParaIn, ParaOut); Verbinde_E->Text = IdHTTP->ResponseText; AnsiString d = IdHTTP->Get("http://miloth.kampf-um-mittelerde.de/game.php?a=clist"); Memo1->Text = d;Allerdings bekomme ich den Fehler: EIdProtocolReplyError mit der Meldung 302 Found
-
Hallo
Laut deiner "Input-Feld Liste" muß die action "Login" mit großen L geschrieben werden
bis bald
akari
-
hab jetzt statt
ParaIn->Add("login=Ich&passwort=abc123&action=login");ParaIn->Add("login=Ich"); ParaIn->Add("passwort=abc123"); ParaIn->Add("action=Login");jetzt kommt der Fehler hier:
AnsiString d = IdHTTP->Get("http://miloth.kampf-um-mittelerde.de/game.php?a=clist");Edit: Liegt das vlt. daran dass die evl. mit Cookies arbeiten?
Kann ich das auch irgendwie bewerkstelligen?thx