HTTP Header auslesen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • HTTP Header auslesen

    Hallo Leute,

    wie kann ich denn (oder kann ich überhaupt) mit PHP einen HTTP-Header auslesen.

    Ich rufe mittels fsockopen() eine Seite auf und möchte nun prüfen, ob diese einen 404 Error oder Sonstiges zurück gibt und dies entsprechend weiterverarbeiten.

    Grüße, Andi

  • #2
    kurzer blick ins manual.
    http://de.php.net/manual/de/function.fsockopen.php

    bei den beispielen steht folgendes. das sollte helfen.

    PHP-Code:
    function connectToURL($addr$port$path$user=""$pass=""$timeout="30")
    {
         
    $urlHandle fsockopen($addr$port$errno$errstr$timeout);

           if (
    $urlHandle)
           {
                  
    socket_set_timeout($urlHandle$timeout);

                   if (
    $path)
                   {
                           
    $urlString "GET $path HTTP/1.0\r\nHost: $addr\r\nConnection: Keep-Alive\r\nUser-Agent: MyURLGrabber\r\n";
                         if (
    $user)
                                   
    $urlString .= "Authorization: Basic ".base64_encode("$user:$pass")."\r\n";
                         
    $urlString .= "\r\n";

                         
    fputs($urlHandle$urlString);

                          
    $response fgets($urlHandle);

                           if (
    substr_count($response"200 OK") > 0)      // Check the status of the link
                           
    {
                                 
    $endHeader false;                     // Strip initial header information
                                   
    while ( !$endHeader)
                                 {
                                          if (
    fgets($urlHandle) == "\r\n")
                                                  
    $endHeader true;
                                  }

                                   return 
    $urlHandle;                    // All OK, return the file handle
                           
    }
                          else if (
    strlen($response) < 15)                // Cope with wierd non standard responses
                           
    {
                                 
    fclose($urlHandle);
                                 return -
    1;
                           }
                          else                                            
    // Cope with a standard error response
                           
    {
                                 
    fclose($urlHandle);
                                   return 
    substr($response,9,3);
                           }
                  }

                   return 
    $urlHandle;
           }
          else
                   return 
    0;

    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Thanx, ich check das mal!

      Grüße, Andi

      Kommentar

      Lädt...
      X