Page 1 sur 1

Creation servive pagerank

Posté : 16 févr. 2009, 22:31
par casinoos
Bonjour,
actuellement webmaster d'un annuaire généraliste, j'aimerai proposer un service d'affichage de pagerank à mes visiteurs sur leur site comme sur celui-ci: http://www.paidpr.com/pagerank.php
Le probleme est que je suis totalement débutant en php est que j'aimerai comme ce site proposer un code permettant d'afficher leur pagerank google sur leur site avec sur cette image un lien qui renvoie vers mon site.
Y a t-il une âme charitable prédisposée à me donner un coup de main ? :?

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

Posté : 17 févr. 2009, 10:51
par Victor BRITO
Tu peux effectuer une recherche sur Google de scripts PHP d'affichage du PageRank, comme celui-ci.

re

Posté : 17 févr. 2009, 21:42
par casinoos
Il semble que ma demande n'est pas interprétée comme je le voulais.
J'ai déjà vu ce script, le problème est que je ne sais pas l'adapter de façon à ce qu'il renvoie vers mon url. Ci joint le script en question: Affichage pagerank
L'exemple typique est sur ce site qui selon moi utilise le même script: http://www.paidpr.com/pagerank.php
A qui voudra bien m'aider...

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

Posté : 18 févr. 2009, 02:06
par dawnzky05
Je suppose que je ne suis pas faire votre demande aussi claire que possible. Dans mon cas, je augmenter mon page rank en faisant de nouveaux articles et de relier les bâtiments.







----------------------------
doit-ont de collection

re

Posté : 19 févr. 2009, 07:44
par casinoos
:shock: Pas bien comprend le réponse là.
Personne ne me fais ca en 30 sec ?

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

Posté : 19 févr. 2009, 11:43
par Ryle
Euh... non... personne ne te fera ça en 30 secondes...

Par contre si tu essayes de le faire par toi même et que tu nous poses des questions précises sur les points que tu ne comprends pas ou qui te posent problème, on est tous prêts à te consacrer autant de temps que nécessaire pour t'aider à apprendre et te permettre de le faire toi même en 30 secondes ;)

Posté : 20 févr. 2009, 15:27
par casinoos
ok alors je me lance ;)
Je peux poster à la suite de ce post ou faut il que j'en creer un nouveau?

Posté : 20 févr. 2009, 15:48
par Ryle
Cool ! Et bien on vous attend de pied ferme toi, ton code et tes questions ! ;)

Continue dans ce topic, comme ça on garde le sujet en tête :)

Posté : 20 févr. 2009, 18:04
par casinoos
Voilà après de longs bidouillages j'ai enfin réussi à adapté le script d'origine à mon theme.
Voici ce que ca donne: http://www.casinoos.net/pagerank.html
Je viens de regardé le code qui en fait tiens sur 2 pages, et je ne comprend absolument rien.
Voici la 1ere page: ( pagerank_exemple )

Code : Tout sélectionner

<?php /****************** * This code is released into the Public Domain * Licence GPL * Sample use: * include('pagerank.php'); * $seoPR=new PagerankSeo(); * echo $seoPR->getRank('http://www.referencement-seo.fr'); * Update 14 Sept. 2006 * Script PagerankSeo - http://www.referencement-seo.fr/ ******************/ $TableStart='<table width="100%"><tr><th class="PRheader">Url</th><th class="PRheader2">Page Rank</th></tr>'."\n"; $RowStart='<tr>'; $CellStart='<td class="PRcell">'; $CellStart2='<td class="PRcell2">'; $CellEnd='</td>'; $RowEnd="</tr>\n"; $TableEnd="</table>\n"; $BadUrlText='Url invalide'; ?> <a name="seo"></a> <div class="content"> <form method="POST" action="#seo"> <p>Entrer une url :</p> <input type="test" value="http://" name="Urlpost" maxlength="300" size="60"> <p><input type="submit" value="Calculer PageRank"></p> </form> <?php error_reporting(0); @include_once 'pagerank.php'; if (!class_exists('PagerankSeo')) { echo '<h2>Erreur, recommencer plus tard !</h2>'; exit; } if (isset($_POST['Urlpost'])) { $seoPR=new PagerankSeo(); $aUrl=$_POST['Urlpost']; //Step thru array of urls $Url=trim($aUrl); //Ignore blank lines if (($Url!='') AND ($Url!='http://')) { if (isUrlValid($Url)) { $PageRank=$seoPR->getRank($Url); } else { $PageRank=$BadUrlText; $PageRank= '0'; } MiseEnTab($Url,$PageRank); } else {echo '<span class="error">Veuillez saisir une adresse web !</span>' ;} } function isUrlValid($Url) { return (strpos(strtolower($Url),'http://')===0); } function MiseEnTab($Url,$PageRank) { echo $GLOBALS['TableStart']; echo $GLOBALS['RowStart'].$GLOBALS['CellStart'].htmlspecialchars($Url).$GLOBALS['CellEnd']; echo $GLOBALS['CellStart2'].$PageRank.$GLOBALS['CellEnd'].$GLOBALS['RowEnd']; echo $GLOBALS['TableEnd']; } ?>
Et la 2eme ( pagerank.php )

Code : Tout sélectionner

<?php /****************** * This code is released into the Public Domain * Licence GPL * Sample use: * include('pagerank.php'); * $seoPR=new PagerankSeo(); * echo $seoPR->getRank('http://www.referencement-seo.fr'); * Update 14 Sept. 2006 * Script PagerankSeo - http://www.referencement-seo.fr/ ******************/ define('GOOGLE_MAGIC', 0xE6359A60); // Use this class if your server is having problems with bitwise operations class PagerankSeo extends PageRank { function xor32($a, $b) { return $this->int32($a) ^ $this->int32($b); } //return least significant 32 bits //works by telling unserialize to create an integer even though we provide a double value function int32($x) { return unserialize("i:$x;"); //return intval($x); // This line doesn't work on all servers. } function mix($a,$b,$c) { $a -= $b; $a -= $c; $a = $this->xor32($a,$this->zeroFill($c,13)); $b -= $c; $b -= $a; $b = $this->xor32($b,$a<<8); $c -= $a; $c -= $b; $c = $this->xor32($c,$this->zeroFill($b,13)); $a -= $b; $a -= $c; $a = $this->xor32($a,$this->zeroFill($c,12)); $b -= $c; $b -= $a; $b = $this->xor32($b,$a<<16); $c -= $a; $c -= $b; $c = $this->xor32($c,$this->zeroFill($b,5)); $a -= $b; $a -= $c; $a = $this->xor32($a,$this->zeroFill($c,3)); $b -= $c; $b -= $a; $b = $this->xor32($b,$a<<10); $c -= $a; $c -= $b; $c = $this->xor32($c,$this->zeroFill($b,15)); return array($a,$b,$c); } } //This class should work on most servers class PageRank { 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 ^= ($this->zeroFill($c,13)); $b -= $c; $b -= $a; $b ^= ($a<<8); $c -= $a; $c -= $b; $c ^= ($this->zeroFill($b,13)); $a -= $b; $a -= $c; $a ^= ($this->zeroFill($c,12)); $b -= $c; $b -= $a; $b ^= ($a<<16); $c -= $a; $c -= $b; $c ^= ($this->zeroFill($b,5)); $a -= $b; $a -= $c; $a ^= ($this->zeroFill($c,3)); $b -= $c; $b -= $a; $b ^= ($a<<10); $c -= $a; $c -= $b; $c ^= ($this->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 = $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); /* the first byte of c is reserved for the length */ 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 = $this->mix($a,$b,$c); /* report the result */ return $mix[2]; } //converts a string into an array of integers containing the numeric value of the char function strord($string) { for($i=0;$i<strlen($string);$i++) { $result[$i] = ord($string{$i}); } return $result; } //returns -1 if no page rank was found function getRank($url){ $ch = "6".$this->GoogleCH($this->strord("info:" . $url)); $pagerank=-1; $fp = fsockopen("www.google.com", 80, $errno, $errstr, 30); if (!$fp) { echo "$errstr ($errno)<br />\n"; } else { $out = "GET /search?client=navclient-auto&ch=" . $ch . "&features=Rank&q=info:" . $url . " HTTP/1.1\r\n" ; $out .= "Host: www.google.com\r\n" ; $out .= "Connection: Close\r\n\r\n" ; fwrite($fp, $out); while (!feof($fp)) { $data = fgets($fp, 128); $pos = strpos($data, "Rank_"); if($pos === false){ }else{ $pagerank = trim(substr($data, $pos + 9)); } } fclose($fp); } return $pagerank; } } ?>
Où puis-je corriger ce défaut d'affichage du résultat (Pagerank collé à l'url)

J'aimerai qu'au moment du résultat, proposer un code html permettant à n'importe qui de placer ce code afin d'avoir l'affichage du page rank sur son site.(url prise de la recherche)
Est ce compliqué à coder? :?


Edit : UP Please ?