Lieber Schimmelreiter,
Dein Script läuft perfekt!
Das weißt Du nicht ... nicht einmal ich weiß das
Es ist irgendwas zwischen "glauben" und "stark annehmen", daß es funktioniert:
Man erhält ja leider beim Login per Web-Browser keinen Hinweis a la "Last login: blah" darauf, wann man sich das letzte Mal eingeloggt hat ...
Dann könnte man es wissen, indem man sich mal mindestens einen guten Tag lang nicht einloggt aber an dem Tag das Script laufen läßt und sich dann am nächsten einloggt und diese Meldung prüft.
Das Script logged sich einfach nur ein und prüft, ob es den Benutzername so wie er auf der Startseite steht auch im Seiteninhalt der Antwort findet, als alter Hase hast Du die Zeile im Code von der ich spreche natürlich längst ausfindig gemacht:
Code:
if ($response->content=~ m/.*UserID:<\/td><td bgcolor="#eeeeee" align="right">([^<]+)<\/.+/gis and (lc($1) eq lc($FDNSUser))) {
also ein ganz einfacher und selbsterklärender Match eines regulären Ausdrucks mit lediglich einer back reference.
Wie man ganz klar sieht, ist der Match aber nicht besonders aussagekräftig, er matched schon, wenn in einer HTML table in einer Spalte "UserID:" und in der nächsten der Benutzername steht.
Derzeit ist das nur der Fall, nachdem man sich erfolgreich eingeloggt hat, aber theoretisch könnte das irgendwann auch auf einer "Login-Fehler"-Seite stehen.
Aber gut, daß ist halt so bei Website-parsenden Scripten und zwar bei allen.
Vielen Dank nochmal dafür. Ein kleiner Fehler hat sich allerdings eingeschlichen:
Bitte.
Danke. Hab's korrigiert.
perfekt, das fehlte mir auch noch zur Abrundung.
Freut mich, wenn's jemandem gefällt