ERLEDIGT
JA
JA
ANTWORTEN
19
19
ZUGRIFFE
850
850
EMPFEHLEN
-
Hallo,
ich lasse mir einen Seitenquelltext mit file_get_contents anzeigen.
Nun ist der Quelltext als eingeloggter Benutzer aber anders. (Z.B. Preise werden angezeigt).
Muss ich da vorher über die Loginseite ? Wenn ja wie? Die Logindaten sind mir ja bekannt, aber wenn ich mich einlogge und mir den Quelltext anzeigen lasse, ist das der für ausgeloggte. Hat das was mit Cokkies zutun?
Vielleicht hat jemand eine Idee, wie man das machen kann.
Besten Dank, Gerd
-
Hallo,
wie ich dich verstehe möchtest du von einem externen Server "geschützte Inhalte" anzeigen lassen.
Sprich dein Script liegt auf Server A und von da aus möchtest du Inhalte von Server B abrufen, die man als eingeloggter Benutzer zu sehen sind.
Wenn dem so ist, dann ist das erstens abhängig von der Art des Logins die auf Server B verwendet werden und zweitens ob man ein PHP Script als "virtuellen Browser" nachbauen kann. Was meine ich damit...
Wenn man den ersten Punkt nachgeht, so gibt es einmal die Möglichkeit Cookies zu benutzen, wo eine Authentifizierung über beim User lokal abgelegte Dateien durchgeführt werden. Sprich die Cookies müssten auf Server A auch liegen. Wenn Server B Sessions verwendet (authentifizierungsdateien liegen auf Server B) und diese werden nach meinem Wissenstand an mehrere Dingen des Users festgemacht (IP, Browser ID, Browser Informationen etc) müsstest du diese nachstellen.
Irgendwie glaube ich, das das nicht geht (wenn das ganze Szenario so abläuft) oder ich denke gerade zu komplex.
Gruss
-
Greifst du über das Dateisystem oder über HTTP auf die Ressource zu? Bei letzterer ist eine Authentifizierung nur über die fsockopen()-Funktion möglich.
Markus Wulftange
-
Vielen Dank, für die Antworten,
kann jemand mal ein beispiel zeigen, wie es gehen könnte wenn ich z.B. die Seite www.meineseite.de/login.php aufrufe und mich mit "username" und "password" einloggen will?
Was muss ich da angeben? Habe bis jetzt nur mit file_get_contents gearbeitet.
Vielen Dank,
Gruß, Gerd
-
12.04.06 00:51 #5
Nabend,
ich hoffe ich hab das jetzt richtig verstanden:
Danach den Response-Header begutachten und gucken, ob Cookies gesetzt werden ("Set-Cookie: "), man weitergeleitet wird ("Location: ") etc.PHP-Code:<?php
function POSTit($target, $data) {
$url = parse_url($target);
$fp = fsockopen($url['host'], 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$inputs = array();
foreach ($data as $input => $value) {
$inputs[] = $input . '=' . rawurlencode($value);
}
$postdata = implode("&", $inputs);
echo "<h1>$postdata</h1>\n";
fputs($fp, "POST " . $url['path'] . " HTTP/1.1\r\n");
fputs($fp, "Host: " . $url['host'] . "\r\n");
fputs($fp, "Content-Type: application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-Length: " . strlen($postdata) . "\r\n");
fputs($fp, "\r\n");
fputs($fp, $postdata . "\r\n");
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
}
// alle signifikanten POST-Daten angeben
$input_fields = array( 'nick' => 'username',
'pass' => 'password',
'submit' => 'Login'
);
// Script an das die Form sendet angeben
//$posted = POSTit('http://www.example.com/form/action/script.php', $input_fields);
?>
Wenn Cookies gesetzt werden, dann müssen diese bei späteren Anfragen wieder mitgeschickt werden ("Cookie: ")
Gruß
MarvinWer an Telekinese glaubt, hebt bitte meine Hand...
-
Eine Funktion wie Du die Antwort vom Server fachgerecht filetieren kannst (und noch ein paar Kleinigkeiten mehr) findest Du uebrigens hier.
PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
Danke für den Quelltext,
bis jetzt hat es aber noch nicht geklappt ein gültiges cookie zu bekommen.
Was muss ich denn da eingeben.
Ich habe z.B. die Seite www.meineseite.de , das Feld user mit testuser und das Feld passwort mit testpasswort.
-
Was hat der Server denn zurueckgegeben?
Den Cookie musst Du aus der Serverantwort ziehen und dann bei den naechsten Aufrufen natuerlich wieder uebergeben.PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
Ergebnis:
Code :1 2 3 4 5 6 7 8 9 10 11 12
HTTP/1.1 200 OK Date: Wed, 12 Apr 2006 15:00:00 GMT Server: Apache/1.3.27 (Linux/SuSE) mod_fastcgi/2.4.2 FrontPage/4.0.4.3 PHP/4.4.1 mod_perl/1.27 mod_ssl/2.8.12 OpenSSL/0.9.6i X-Powered-By: PHP/4.4.1 Set-Cookie: osCsid=ed0cd4ece349ac2a88215e3952461d1e; path=/; domain=www.......de Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Transfer-Encoding: chunked Content-Type: text/html 3c63
Der bringt auch ein Cookie, nur funktioniert es nicht. Ich gehe davon aus, dass der Login nicht geklappt hat.
-
Was genau funktioniert denn nicht?
Uebergibst Du den Cookie beim naechsten Seitenaufruf auch wieder?PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
Das einloggen geht nicht.
Der Cookie, den ich bekomme ist ungültig
-
Dann werden wohl Username/Passwort entweder von Dir oder vom Script falsch uebergeben.
PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
Irgendwie komme ich nicht weiter.
Wie muss ich denn genau die zugangsdaten übergeben, und in welcher Variable wird das cookie gespeichert?
-
Hast du zufällig den Firefox-Browser zur Verfügung? Dann installiere mal die „LiveHTTPHeader“-Erweiterung und prüfe mal selbst, welche HTTP-Header-Felder zur Authentifizierung mit welchen Werten gesetzt werden.
Markus Wulftange
-
Danke für den Tipp.
Bin jetzt schon etwas weiter.
Wie kann man den Header einer bestimmten Seite Seite abrufen?
Ich brauche den Cookie der dort vergeben wird.
Ähnliche Themen
-
Als Eingeloggter User noch nicht gelesene Forumeinträge Markiert anzeigen
Von dAk0Ta im Forum PHPAntworten: 8Letzter Beitrag: 27.04.05, 19:10 -
Benutzer von Beitrag anzeigen
Von josephina im Forum PHPAntworten: 1Letzter Beitrag: 13.01.05, 20:46 -
Eingeloggter Benutzer herausfinden
Von kahuna im Forum .NET ArchivAntworten: 2Letzter Beitrag: 06.01.05, 08:30 -
Anmeldung Win 2000 Pro (Benutzer anzeigen)
Von schultze im Forum Microsoft WindowsAntworten: 1Letzter Beitrag: 20.05.04, 13:03 -
mom. anwesende Benutzer anzeigen?
Von HAL im Forum PHPAntworten: 3Letzter Beitrag: 10.03.03, 14:41





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren