|
Antorr Profil * |
#1 · Zasláno: 3. 2. 2009, 09:51:33 · Upravil/a: Moderátor (editace znemožněna)
Měl bych dotaz, na stránkách mám scipt na zjíšťování stáří domény, ale vůbec nejede, místo stáří píše Unknow . . .
function getAge () {
$url = ereg_replace('^www\.', '', $this->url['host']);
$url = "http://www.who.is/whois-com/ip-address/$url";
$data = $this->getPage($url);
preg_match('#Creation Date: ([a-z0-9-]+)#si', $data, $p);
if ($p[1]) {
$time = time() - strtotime($p[1]);
$years = round($time / 31556926);
$days = round(($time % 31556926) / 86400);
$value = "$years years, $days days";
} else {
$value = 'Unknown';
}
return $value;
}
WEB je http://sluzby.gravegame.net/analyza.php
|
|
|
bitbit Profil |
#2 · Zasláno: 3. 2. 2009, 11:06:34
Dobrý den.
Nikde na whois nevidim
Creation Date: ale např. registered: tak jestli to nebude tím.
takže asi
preg_match('#Creation Date: ([a-z0-9-]+)#si', $data, $p);
na
preg_match('#registered: ([a-z0-9-]+)#si', $data, $p);
|
|
|
Antorr Profil * |
#3 · Zasláno: 3. 2. 2009, 11:45:34 · Upravil/a: Moderátor (editace znemožněna)
Díky, ale tato změna taky nejede
|
|
|
bitbit Profil |
#4 · Zasláno: 3. 2. 2009, 11:56:18 · Upravil/a: bitbit
tak jeste zmen na toto:
preg_match('#registered: ([0-9]+\.[0-9]+\.[0-9]+\ [0-9]+\:[0-9]+\:[0-9]+)#si', $data, $p);
PS: vsiml jsem si, ze je tam ruzny pocet mezer, tak takhle
preg_match('#registered:(.*) ([0-9]+\.[0-9]+\.[0-9]+\ [0-9]+\:[0-9]+\:[0-9]+)#si', $data, $p);
if ($p[2]) {
$time = time() - strtotime($p[2]);
|
|
|
Antorr Profil * |
#5 · Zasláno: 3. 2. 2009, 13:07:54
„tak jeste zmen na toto:“
„1 preg_match('#registered: ([0-9]+\.[0-9]+\.[0-9]+\ [0-9]+\:[0-9]+\:[0-9]+)#si', $data, $p);“
„PS: vsiml jsem si, ze je tam ruzny pocet mezer, tak takhle“
„123 preg_match('#registered:(.*) ([0-9]+\.[0-9]+\.[0-9]+\ [0-9]+\:[0-9]+\:[0-9]+)#si', $data, $p);“
„if ($p[2]) {“
„$time = time() - strtotime($p[2]);“
Taky nejede
|
|
|
bitbit Profil |
#6 · Zasláno: 3. 2. 2009, 13:46:32
Tak sem dejte celou tu třídu. Vypadá to, že je problém v načtení dat té stránky.
|
|
|
Antorr Profil * |
#7 · Zasláno: 3. 2. 2009, 15:10:35
<?php
class pagerank {
var $url;
function pagerank ($url) {
set_time_limit(0);
$this->url = parse_url('http://' . ereg_replace('^http://', '', $url));
$this->url['full'] = 'http://' . ereg_replace('^http://', '', $url);
}
function getPage ($url) {
if (function_exists('curl_init')) {
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
@curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($ch, CURLOPT_REFERER, 'http://www.google.com/search?hl=en&q=google&btnG=Google+Search');
return curl_exec($ch);
} else {
return file_get_contents($url);
}
}
function getPagerank () {
$url = 'info:' . $this->url['host'];
$checksum = $this->checksum($this->strord($url));
$url = "http://www.google.com/search?client=navclient-auto&ch=6$checksum&features=Rank&q=$url";
$data = $this->getPage($url);
preg_match('#Rank_[0-9]:[0-9]:([0-9]+){1,}#si', $data, $p);
$value = ($p[1]) ? $p[1] : 0;
return $value;
}
function getAlexaRank ($url) {
$xml = simplexml_load_file('http://data.alexa.com/data?cli=10&dat=s&url=' . $url);
return $xml->SD->POPULARITY['TEXT'];
}
function getDmoz () {
$url = ereg_replace('^www\.', '', $this->url['host']);
$url = "http://search.dmoz.org/cgi-bin/search?search=$url";
$data = $this->getPage($url);
if (ereg('<center>No <b><a href="http://dmoz\.org/">Open Directory Project</a></b> results found</center>', $data)) {
$value = false;
} else {
$value = true;
}
return $value;
}
function getYahooDirectory () {
$url = ereg_replace('^www\.', '', $this->url['host']);
$url = "http://search.yahoo.com/search/dir?p=$url";
$data = $this->getPage($url);
if (ereg('No Directory Search results were found\.', $data)) {
$value = false;
} else {
$value = true;
}
return $value;
}
function getBacklinksGoogle () {
$url = $this->url['host'];
$url = 'http://www.google.com/search?q=' . urlencode($url);
$data = $this->getPage($url);
preg_match('/of about \<b\>([0-9\,]+)\<\/b\>/si', $data, $p);
$value = ($p[1]) ? number_format($this->toInt($p[1])) : 0;
return $value;
}
function getBacklinksYahoo () {
$url = $this->url['host'];
$url = 'http://search.yahoo.com/search?p=' . urlencode("http://$url");
$data = $this->getPage($url);
preg_match('/of ([0-9\,]+)/si', $data, $p);
$value = ($p[1]) ? number_format($this->toInt($p[1])) : 0;
return $value;
}
function getResultsAltaVista () {
$url = $this->url['host'];
$url = 'http://www.altavista.com/web/results?q=' . urlencode($url);
$data = $this->getPage($url);
preg_match('#AltaVista found ([0-9,]+){1,} results#si', $data, $p);
$value = ($p[1]) ? number_format($this->toInt($p[1])) : 0;
return $value;
}
function getResultsAllTheWeb () {
$url = $this->url['host'];
$url = 'http://www.alltheweb.com/search?q=' . urlencode($url);
$data = $this->getPage($url);
preg_match('#<span class="ofSoMany">([0-9,]+){1,}</span>#si', $data, $p);
$value = ($p[1]) ? number_format($this->toInt($p[1])) : 0;
return $value;
}
function getAge () {
$url = ereg_replace('^www\.', '', $this->url['host']);
$url = "http://www.who.is/whois-com/ip-address/$url";
$data = $this->getPage($url);
preg_match('#registered: ([0-9]+\.[0-9]+\.[0-9]+\ [0-9]+\:[0-9]+\:[0-9]+)#si', $data, $p);
if ($p[1]) {
$time = time() - strtotime($p[1]);
$years = round($time / 31556926);
$days = round(($time % 31556926) / 86400);
$value = "$years years, $days days";
} else {
$value = 'Unknown';
}
return $value;
}
function toInt ($string) {
return preg_replace('#[^0-9]#si', '', $string);
}
function to_int_32 (&$x) {
$z = hexdec(80000000);
$y = (int) $x;
if($y ==- $z && $x <- $z){
$y = (int) ((-1) * $x);
$y = (-1) * $y;
}
$x = $y;
}
function zero_fill ($a, $b) {
$z = hexdec(80000000);
if ($z & $a) {
$a = ($a >> 1);
$a &= (~$z);
$a |= 0x40000000;
$a = ($a >> ($b - 1));
} else {
$a = ($a >> $b);
}
return $a;
}
function mix ($a, $b, $c) {
$a -= $b; $a -= $c; $this->to_int_32($a); $a = (int)($a ^ ($this->zero_fill($c, 13)));
$b -= $c; $b -= $a; $this->to_int_32($b); $b = (int)($b ^ ($a << 8));
$c -= $a; $c -= $b; $this->to_int_32($c); $c = (int)($c ^ ($this->zero_fill($b, 13)));
$a -= $b; $a -= $c; $this->to_int_32($a); $a = (int)($a ^ ($this->zero_fill($c, 12)));
$b -= $c; $b -= $a; $this->to_int_32($b); $b = (int)($b ^ ($a << 16));
$c -= $a; $c -= $b; $this->to_int_32($c); $c = (int)($c ^ ($this->zero_fill($b, 5)));
$a -= $b; $a -= $c; $this->to_int_32($a); $a = (int)($a ^ ($this->zero_fill($c, 3)));
$b -= $c; $b -= $a; $this->to_int_32($b); $b = (int)($b ^ ($a << 10));
$c -= $a; $c -= $b; $this->to_int_32($c); $c = (int)($c ^ ($this->zero_fill($b, 15)));
return array($a,$b,$c);
}
function checksum ($url, $length = null, $init = 0xE6359A60) {
if (is_null($length)) {
$length = sizeof($url);
}
$a = $b = 0x9E3779B9;
$c = $init;
$k = 0;
$len = $length;
while($len >= 12) {
$a += ($url[$k + 0] + ($url[$k + 1] << 8) + ($url[$k + 2] << 16) + ($url[$k +3] << 24));
$b += ($url[$k + 4] + ($url[$k + 5] << 8) + ($url[$k + 6] << 16) + ($url[$k +7] << 24));
$c += ($url[$k + 8] + ($url[$k + 9] << 8) + ($url[$k + 10] << 16) + ($url[$k +11] << 24));
$mix = $this->mix($a, $b, $c);
$a = $mix[0]; $b = $mix[1]; $c = $mix[2];
$k += 12;
$len -= 12;
}
$c += $length;
switch($len) {
case 11: $c += ($url[$k + 10] << 24);
case 10: $c += ($url[$k + 9] << 16);
case 9 : $c += ($url[$k + 8] << 8);
case 8 : $b += ($url[$k + 7] << 24);
case 7 : $b += ($url[$k + 6] << 16);
case 6 : $b
|
|
|
Antorr Profil * |
#8 · Zasláno: 3. 2. 2009, 15:13:02
case 6 : $b += ($url[$k + 5] << 8);
case 5 : $b += ($url[$k + 4]);
case 4 : $a += ($url[$k + 3] << 24);
case 3 : $a += ($url[$k + 2] << 16);
case 2 : $a += ($url[$k + 1] << 8);
case 1 : $a += ($url[$k + 0]);
}
$mix = $this->mix($a, $b, $c);
return $mix[2];
}
function strord ($string) {
for($i = 0; $i < strlen($string); $i++) {
$result[$i] = ord($string{$i});
}
return $result;
}
}
$options = array(
'pagerank' => true,
'dmoz' => true,
'yahooDirectory' => true,
'backlinksYahoo' => true,
'backlinksGoogle' => true,
'altavista' => true,
'alltheweb' => true,
'alexarank' => true,
'age' => true,
'thumb' => true
);
if ($_POST['urls']) {
$rep=array("\r"," ");
$_POST['urls']=str_replace($rep,'',$_POST['urls']);
$urls = split("\n", $_POST['urls']);
$results = array();
foreach ($urls as $url) {
if(!empty($url)||trim($url!='')){
$data = new pagerank(trim($url));
$results[] = array(
'url' => $data->url['host'],
'pagerank' => $data->getPagerank(),
'dmoz' => $data->getDmoz(),
'yahooDirectory' => $data->getYahooDirectory(),
'backlinksYahoo' => $data->getBacklinksYahoo(),
'backlinksGoogle' => $data->getBacklinksGoogle(),
'altavista' => $data->getResultsAltaVista(),
'alltheweb' => $data->getResultsAllTheWeb(),
'alexarank' => $data->getAlexaRank($url),
'age' => $data->getAge(),
'thumb' =>"http://images.websnapr.com/?size=T&key=C5VIuGtdv2Kd&url=".$url
);
}
}
}
?>
|
|
|
bitbit Profil |
#9 · Zasláno: 3. 2. 2009, 20:49:24
takhle mi to slo.
function getAge () {
$url = ereg_replace('^www\.', '', $this->url['host']);
$url = "http://www.who.is/whois-com/ip-address/$url";
$data = $this->getPage($url);
preg_match('#registered:(.*) ([0-9]+\.[0-9]+\.[0-9]+\ [0-9]+\:[0-9]+\:[0-9]+)#si', $data, $p);
if ($p[2]) {
$time = time() - strtotime($p[2]);
$years = round($time / 31556926);
$days = round(($time % 31556926) / 86400);
$value = "$years years, $days days";
} else {
$value = 'Unknown';
}
return $value;
}
|
|
|
Antorr Profil * |
#10 · Zasláno: 4. 2. 2009, 15:31:34
bitbit
I kdyz sem to upravil podle tebe, tak to porad pise unknow
|
|
|
bitbit Profil |
#11 · Zasláno: 5. 2. 2009, 12:46:46
Tak ti asi hosting neumožňuje načítat výstup vzdálené stránky. Na mém apachi s php5 to šlape.
|
|