Pagerank ölçen sitelerdeki resimler hoşuma gitmiyordu, yani benim blogumun temasına uyum sağlamıyordu. Bende kendi pagerank gösteren kodumu kendim yazarım dedim. Öncelikle pagerankın üzerinde gösterileceği bir png formatında resime ihtiyacımız var. Ben şunu yaptım kendim için.
şimdi kodlarımıza geçelim.
fontun rengini rgb formatında girmeniz gerek, daha önce hex kodlarını nasıl rgb formatına çevirebiliriz anlatmıştım.
$domain=$_GET['domain'];
if(!$domain){$domain="h4ckinger.org";}
$domain=str_replace("http://","",$domain);
header("Content-type: image/png");
$dosya = "buton.png"; // png dosyası olması gerek
$resim = imagecreatefrompng("$dosya");
$yazirenk = imagecolorallocate($resim, 153, 170, 51); # metnin rengini ayarlıyoruz, rgb formatında
$zort=trim(prkac($domain));
$px = (imagesx($resim) - 3.5 * strlen($zort)) / 2;
imagestring($resim, 8, $px, 10, $zort, $yazirenk);
imagepng($resim);
imagedestroy($resim);
function prkac($url){
$ch = "6" . GoogleCH(strord("info:" . $url));
$out = "http://www.google.com/search?client=navclient-auto&ch=". $ch . "&features=Rank&q=info:" . $url;
$bol=explode(":",baglan($out));
return $bol[2];
}
function baglan($url){
$oturum = curl_init();
curl_setopt($oturum, CURLOPT_URL, $url);
$browser = $_SERVER['HTTP_USER_AGENT'];
curl_setopt($oturum, CURLOPT_USERAGENT, $browser);
curl_setopt($oturum, CURLOPT_HEADER, 0);
curl_setopt($oturum, CURLOPT_RETURNTRANSFER, true);
$source=curl_exec($oturum);
curl_close($oturum);
return $source;
}
define('GOOGLE_MAGIC', 0xE6359A60);
function zeroFill($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; $a ^= (zeroFill($c,13));
$b -= $c; $b -= $a; $b ^= ($a<<8);
$c -= $a; $c -= $b; $c ^= (zeroFill($b,13));
$a -= $b; $a -= $c; $a ^= (zeroFill($c,12));
$b -= $c; $b -= $a; $b ^= ($a<<16);
$c -= $a; $c -= $b; $c ^= (zeroFill($b,5));
$a -= $b; $a -= $c; $a ^= (zeroFill($c,3));
$b -= $c; $b -= $a; $b ^= ($a<<10);
$c -= $a; $c -= $b; $c ^= (zeroFill($b,15));
return array($a,$b,$c);
}
function GoogleCH($url, $length=null, $init=GOOGLE_MAGIC) {
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 = mix($a,$b,$c);
$a = $mix[0]; $b = $mix[1]; $c = $mix[2];
$k += 12;
$len -= 12;
}
$c += $length;
switch($len) /* all the case statements fall through */
{
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+=($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 = mix($a,$b,$c);
return $mix[2];
}
function strord($string) {
for($i=0;$i
}
return $result;
}
?>
buton.png ve php dosyamız aynı dizinde bulunmalı
Kaydol:
Kayıt Yorumları (Atom)
0 yorum:
Yorum Gönder