login  Naam:   Wachtwoord: 
Registreer je!
 Forum

sockets (Opgelost)

Offline Sander1993 - 29/12/2008 22:24 (laatste wijziging 29/12/2008 22:27)
Avatar van Sander1993PHP interesse hey,

na aanleiding van een socket tutorial ben ik een beetje gaan experimenteren en heb ik deze code:
  1. <?php
  2. $fp = fsockopen("www.google.nl", 80, $errno, $errstr, 30);
  3. if (!$fp) {
  4. echo "$errstr ($errno)<br />\n";
  5. } else {
  6. $out = "GET / HTTP/1.1\r\n";
  7. $out .= "Host: www.google.nl\r\n";
  8. $out .= "Connection: Close\r\n\r\n";
  9. fwrite($fp, $out);
  10. while (!feof($fp)) {
  11. echo fread($fp, 128);
  12. }
  13. fclose($fp);
  14. }
  15. ?>

nu voer ik hem uit en hoop ik dit te krijgen:
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Date: Mon, 29 Dec 2008 21:23:19 GMT
Expires: -1
Content-Type: text/html; charset=ISO-8859-1
Set-Cookie: PREF=ID=ecd04ebbe51c62c7:TM=1230585799:LM=1230585799:S=Zsq-05Lqj6E2qXjz; expires=Wed, 29-Dec-2010 21:23:19 GMT; path=/; domain=.google.nl
Server: gws
Transfer-Encoding: chunked
Connection: Close

dit krijg ik ook + de content van google, terwijl dat niet de bedoeling is, hoe los ik dit nu op?

6 antwoorden

Gesponsorde links
Offline Stijn - 30/12/2008 00:13
Avatar van Stijn PHP expert Hetgeen je doet is iets wat je browser ook doet. Je doet namelijk een HTTP GET request naar een server en die stuurt je headers en inhoud terug.
Offline Sander1993 - 30/12/2008 10:06
Avatar van Sander1993 PHP interesse zou ik dan de header en de inhoud van elkaar moeten splitten om alleen de headers te krijgen?
Offline Koen - 30/12/2008 10:25 (laatste wijziging 30/12/2008 10:31)
Avatar van Koen PHP expert http://www.plaatscode.be/64176/

Is alles wat er wordt gereturned.

PHP.net: Explode op "\r\n\r\n" ?
  1. <?php
  2. $fp = fsockopen("www.google.nl", 80, $errno, $errstr, 30);
  3. if (!$fp) {
  4. echo "$errstr ($errno)<br />\n";
  5. } else {
  6. $out = "GET / HTTP/1.1\r\n";
  7. $out .= "Host: www.google.nl\r\n";
  8. $out .= "Connection: Close\r\n\r\n";
  9. fwrite($fp, $out);
  10. while (!feof($fp)) {
  11. $sReturn = fread($fp, 128);
  12. $aExploded = explode("\r\n\r\n", $sReturn);
  13. $sHeaders = $aExploded[0];
  14. echo $sHeaders;
  15. }
  16. fclose($fp);
  17. }
  18. ?>
Offline Sander1993 - 30/12/2008 10:57
Avatar van Sander1993 PHP interesse nee werkt nog steeds niet, hierbij geeft google de headers en de content terug terwijl ik alleen de headers wil
Offline Koen - 30/12/2008 11:36
Avatar van Koen PHP expert
  1. <?php
  2. $fp = fsockopen("www.sitemasters.be", 80, $errno, $errstr, 30);
  3. if (!$fp) {
  4. echo "$errstr ($errno)<br />\n";
  5. } else {
  6. $out = "GET / HTTP/1.1\r\n";
  7. $out .= "Host: www.sitemasters.be\r\n";
  8. $out .= "Connection: Close\r\n";
  9. $out .= "\r\n";
  10. fwrite($fp, $out);
  11. $sReturn = '';
  12. while (!feof($fp)) {
  13. $sReturn .= fread($fp, 4096);
  14. }
  15. $aExploded = explode("\r\n\r\n", $sReturn);
  16. echo $aExploded[0];
  17. fclose($fp);
  18. }
  19. ?>


Werkt 
Offline Sander1993 - 30/12/2008 12:01
Avatar van Sander1993 PHP interesse idd, thnx
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.211s