Показать сообщение отдельно

  #9  
Старый 26.08.2008, 16:41
mr.The
Познавший АНТИЧАТ
Регистрация: 30.04.2007
Сообщений: 1,205
С нами: 10016425

Репутация: 1257


По умолчанию

Функция получения страницы через сокеты.
Параметры:

$site - адрес сайта без http .обязательный параметр.
$page - адрес страницы сайта .обязательный параметр.
$isheaders=false - получать ли заголовки. по умолчанию выкл.
$ua='Opera 9.27 (compatible; MSIE 6.0; Windows NT 5.1; ru)' - браузер
$ref='' - реферрер
$cookie='' - печеньки
$post='' - пост данные


PHP код:
function get_page($site,$page,$isheaders=false,$ua='Opera 9.27 (compatible; MSIE 6.0; Windows NT 5.1; ru)',$ref='',$cookie='',$post='')
{
$page=trim($page);
$site=trim($site);
$socket fsockopen($site80$errno$errstr15);
if (
$socket){
    
    if (
$post!=''){
        
$send  "POST $page HTTP/1.0\r\n"
        
$send .= "Content-Length: "strlen($post) ."\r\n";
        
$send .= "Content-Type: application/x-www-form-urlencoded; charset=utf-8\r\n";    
    }  else 
$send  "GET $page HTTP/1.0\r\n";
    
$send .= "User-Agent: $ua\r\n";
    
$send .= "Host: $site\r\n";
    
$send .= "Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1\r\n";
    if(
$ref!=''$send .= "Referer: $ref\r\n";
    if(
$cookie!=''){
        
$send .= "Cookie: $cookie\r\n";
        
$send .= 'Cookie2: $Version=1'."\r\n";
    }
    
$send .= "Accept-Language: ru,en;q=0.9,ru-RU;q=0.8\r\n";
    
$send .= "Connection: close\r\n\r\n".$post;


    if(
fputs($socket,$send)) { 
        if(!
$isheaders) while(fgets($socket,1024)!="\r\n" && !feof($socket));
        
$he="";
        while(!
feof($socket)) $he.=fread($socket,10240);
    };
    
fclose($socket);
}
return 
$he;
}; 
 
Ответить с цитированием