Salve a tutti! Avrei bisogno sapere un modo per ottenere la posizione in classifica del proprio sito tramite PHP. Grazie per l'aiuto
Salve a tutti! Avrei bisogno sapere un modo per ottenere la posizione in classifica del proprio sito tramite PHP. Grazie per l'aiuto
Io sono arrivato a questo: http://tb.altervista.org/tb_js/93/tb_hits_darkwolf.js
Questo è il tuo: http://tb.altervista.org/tb_js/82/tb_hits_ptm.js
Come vedi l'url, oltre al nome, è differente in quel numero e quindi non sarà facile ottenerlo in modo dinamico (piuttosto semplice per un singolo nome).
Si, io usavo quel metodo... solo che ultimamente mi da problemi. Fino a qualche giorno fa usavo questa url e usavo le REGEX per ottenere le varie posizioni e l'andamento. Solo che adesso andando alla pagina dal browser visualizza normalmente il testo, ma cercando di ottenerlo con php mi salta fuori tutto il codice della toolbar... Non so come spiegarlo... anche usando queste semplici righe di codice salta fuori la toolbar per intero
Codice PHP:
<?php
$content=file_get_contents("http://tb.altervista.org/tb_js/82/tb_hits_ptm.js");
echo $content;
?>
A me funziona:Codice PHP:
<?php
$content=file_get_contents("http://tb.altervista.org/tb_js/82/tb_hits_ptm.js");
preg_match("/'hitspos':(.*),'catpos/", $content, $code);
echo $code[1]; // Stamperà la tua posizione: 296
?>
Ultima modifica di darkwolf : 19-09-2010 alle ore 05.45.10 Motivo: Piccola(?) correzione :P
No, niente... non so come mai non funziona... anche a stampare l'array dei matches me lo da vuoto
Pagina di prova: http://ptm.altervista.org/test.phpCodice PHP:
<?php
$content=file_get_contents("http://tb.altervista.org/tb_js/82/tb_hits_ptm.js");
preg_match("/'hitspos':(.*),'catpos/", $content, $code);
print_r($code);
?>
Hai ragione, io lo testavo in locale e li funziona.
Qui: http://darkwolf.altervista.org/test.php non funziona.
Qui invece (server esterno) è ok: http://www.orgogliopeloritano.it/test.php
--
Stessa cosa usando il curl:
Codice PHP:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://tb.altervista.org/tb_js/82/tb_hits_ptm.js");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$content = curl_exec($ch);
preg_match("/'hitspos':(.*),'catpos'/", $content, $code);
echo $code[1];
?>
Ultima modifica di darkwolf : 19-09-2010 alle ore 13.49.49
Non so per quale motivo, ma ora ha ripreso a funzionare come volevo io :D Grazie dell'aiuto ;)