Daar wil ik ook nog ff aan toevoegen dat ik hier op 56k zit te pruttelen, en dan snap je me misschien beter, dan ben je blij dat je om 0:30 snachts snel een pagina op je scherm hebt, en dat dat voorbeeld dan niet werkt, tjah, kan ik ook niets aan doen
Maar nu dit topic toch open is:
Ik heb nu deze code om in te loggen op een pagina:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| $user = "oikoyama";
$pass = "demo";
$request = "GET http://localhost/isecure/safe/index.html HTTP/1.0\r\n";
$request .= "Host: localhost:80\r\n";
//$request .= "User-Agent: PHP/".phpversion()."\r\n";
$request .= "Authorization: Basic ".base64_encode($user.":".$pass)."\r\n";
$request .= "\r\n";
$fs = fsockopen("localhost", 80, $errno, $errstr, 20);
if (!$fs) {
echo "$errstr ($errno)<br>\n";
} else {
fputs($fs, $request);
//echo $request;
while (!feof($fs)) {
$buffer = fgets($fs, 4096);
echo $buffer;
}
fclose ($fs);
} |
En als ik dan dus die pagina binnen haal gaat alles goed, alleen zie ik de http headers boven in beeld. Ik snap dat ik daar nog een paar regeltjes aan toegevoegt heb in het begin, dom ben ik niet, maar nu is mijn vraag, hoe ik ervoor kan zorgen dat deze niet op het beeld komen. Is die http header altijd even groot, of is daar een gemakkelijke oplossing voor?
[edit]
Ik heb al een oplossing bed8. Er zit één witregel na de http headers, maar om die te vinden, moet je eerst de \r\n verwijderen. Als je die dus vind begint de content.
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| $user = "oikoyama";
$pass = "demo";
$request = "GET http://localhost/isecure/safe/index.html HTTP/1.0\r\n";
$request .= "Host: localhost:80\r\n";
$request .= "User-Agent: PHP/".phpversion()."\r\n";
$request .= "Authorization: Basic ".base64_encode($user.":".$pass)."\r\n";
$request .= "\r\n";
$fs = fsockopen("localhost", 80, $errno, $errstr, 20);
if (!$fs) {
echo "$errstr ($errno)<br>\n";
} else {
fputs($fs, $request);
//echo $request;
while (!feof($fs)) {
$buffer = fgets($fs, 1024); //4096
if($content == false){
$strLine = ereg_replace("[\r\n]", "", $buffer);
if(strlen($strLine) == 0){
$content = true;
}
}else{
echo $buffer;
}
}
fclose ($fs);
} |
Als iemand een nettere oplossing weet, laat het me weten

[edit2]
Zoals je ziet had ik het al gevonden
[
Voor 46% gewijzigd door
bgever op 13-03-2003 01:30
]