<?
class cURL {
var $user_agent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0)";
var $proxy_ip = "";
var $proxy_port = 0;
var $proxy_url = "";
var $proxy_type = "";
var $status = 0;
var $error = "";
var $timeout = 30;
var $cookies = "";
var $last_url = "";
var $fix_cookies = false;
function __construct($cookies) {
if (!$cookies) $cookies = tempnam("./", "CURLCOOKIE");
$this->cookies = $cookies;
}
function open($url,$post="") {
$ch = curl_init();
if ($this->proxy_url != "") $url = str_replace("%s", str_replace("http://","",$url), $this->proxy_url);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
if ($post != "") {
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
}
curl_setopt($ch, CURLOPT_USERAGENT, $this->user_agent);
curl_setopt($ch,CURLOPT_TIMEOUT, $this->timeout);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_REFERER, $this->last_url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
//if ($this->last_url == "")
curl_setopt ($ch, CURLOPT_COOKIEJAR, $this->cookies);
curl_setopt ($ch, CURLOPT_COOKIEFILE, $this->cookies);
if ($this->proxy_ip != "") {
curl_setopt($ch, CURLOPT_PROXYPORT, $this->proxy_port);
curl_setopt($ch, CURLOPT_PROXYTYPE, 'HTTP');
curl_setopt($ch, CURLOPT_PROXY, $this->proxy_ip);
if ($this->proxy_type == "socks") curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
}
$data = curl_exec($ch);
$this->status = curl_getinfo($ch,CURLINFO_HTTP_CODE);
$this->error = curl_error($ch);
$this->last_url = $url;
curl_close($ch);
return $data;
}
}