Jump to content


Photo

Retorno curl usuários online


  • Faça o login para participar
Nenhuma resposta neste tópico

#1 diegoguedesm

diegoguedesm

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Masculino
  • Localidade:Montes Claros

Posted 19/09/2015, 03:51

Olá, com esse código consigo retorno dos usuarios online somente localhost. Quando envio para host deixa de funcionar, mesmo buscando o código ex na segunda chamada. Ele só funciona com o segundo parametro tokem gerado na página do site código fonte. Alguem tem ideia como funcionar esse script na host se tem algum tipo de proteção para não ter retorno quando ta na host?

if (!function_exists('getHistats')) {
        function getHistats($sid = 0, $cc = '') {
           
                if (empty($sid) || empty($cc))
                        return 'erro';
                $url    = 'http://www.histats.com/viewstats/HST_GET_SUMMARY.php';
                $result = '';
                $ualist = array(
                        'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.2; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)',
                        'Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.23 (KHTML, like Gecko) Ubuntu/10.04 Chromium/11.0.688.0 Chrome/11.0.688.0 Safari/534.23',
                        'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.14) Gecko/20110221 Ubuntu/10.04 (lucid) Firefox/3.6.14 GTB7.1',
                        'Opera/9.80 (X11; Linux i686; U; en) Presto/2.7.62 Version/11.01',
                        'Midori/0.2.2 (X11; Linux i686; U; en-us) WebKit/531.2+',
                        'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20100101 Firefox/15.0',
                        'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1150.1 Iron/20.0.1150.1 Safari/536.11'
                );
                if (function_exists('curl_init')) {
                        $http_headers                            = array();
                        $http_headers[]                    = 'Host: www.histats.com';
                        $http_headers[]                    = 'Referer: www.histats.com/viewstats/?sid='. $sid .'&act=2&f=1';
                        $http_headers[]                    = 'X-Requested-With: XMLHttpRequest';
                        $opts                                            = array();
                        $opts[CURLOPT_URL]                      = $url;
                        $opts[CURLOPT_HTTPHEADER]        = $http_headers;
                        $opts[CURLOPT_CONNECTTIMEOUT] = 5;
                        $opts[CURLOPT_TIMEOUT]          = 10;
                        $opts[CURLOPT_USERAGENT]          = $ualist[rand(0, count($ualist) - 1)];
                        $opts[CURLOPT_HEADER]            = FALSE;
                        $opts[CURLOPT_RETURNTRANSFER] = TRUE;
                        $opts[CURLOPT_POST]                = 1;
                        $opts[CURLOPT_POSTFIELDS]        = 'AR_REQ[sid]='. $sid .'&AR_REQ[CC]='. $cc .'&dbg=1';
                 
                        # Initialize PHP/CURL handle
                        $ch = curl_init();
                        curl_setopt_array($ch, $opts);
                        # Create return array
                        $result = curl_exec($ch);
                        curl_close($ch);
                } elseif (ini_get('allow_url_fopen')) {
                        $result = file_get_contents($url);
                }

                if (empty($result) || ($result == 'error=11') || ($result == 'err:1'))
                        return 'erro';
                $obj = json_decode($result);
                return isset($obj->livearray->livesummary->cur_online) ? $obj->livearray->livesummary->cur_online : 0;
        }
}
$html = file_get_contents('http://histats.com/viewstats/?sid=3041076&act=2&f=1');
preg_match("/OBJ_summary.sockTOKEN = '(.*?)'/i", $html, $match);
echo 'Onlines: '. getHistats('3041076', 'bjh1NStBTVZyMFJzRENTODFHTHNQamJyV0FvY2l4TGRNSk5FczQyYnR3dERlaUhWczJZNUtWQk5lU2p6STlyRTZCQXZUd2t6MWJzS3Z2cWs2d1g4aXc9PQ==');
echo '<br />';
echo 'Token: '. $match[1];
echo '<br />';
echo 'Onlines: '. getHistats('3041076', $match[1]);





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq