Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Google Page Rank

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074

    Google Page Rank

    Ho uno strano problema con il codice per rilevare il Page Rank di Google (scaricato da:http://www.googlecommunity.com/scrip...e-pagerank.php):
    se faccio il test dalla pagina di google community - per il mio dominio, www.metatad.it - mi da come risultato 4, che è lo stesso che mi riporta Powerstats.it; se faccio una pagina di prova, in cui metto un link che chiama pagerank.php (la pagina scaricata di cui sopra), mi da ancora 4.
    Ma se metto il codice in una pagina (ad es. l'index) e faccio l'echo nella pagina stessa, mi da come risultato 8!
    In pratica, se da una pagina 'X' richiamo pagerank.php, il risultato mostrato è corretto, se invece lo stesso codice di pagerank.php lo metto in un'altra pagina, che non viene caricata in seguito ad una chiamata da un link, ma caricata direttamente (bookmark, o digitazione dell'URL), mi da un risultato errato (doppio).
    Da cosa può dipendere?
    E come si può ovviare? Quello che vorrei, ovviamente, è mettere il valore del Google PageRank già sulla splash page...

  2. #2
    mah, vedendo il codice dello script si direbbe che quando un url non e' definito da 8 ... infatti spara un notice e poi scrive 8 ... che non e' il doppio di 4 ( o meglio on come lo intendi tu ), e' semplicemente un valore fittizio su una stringa nulla dato dai calcoli interni.

    Quindi tutto quello che devi fare prima di includere quello script e' scrivere la variabile url con il tuo sito.


    $url = 'http://ww.tuosito.it/';
    require('pagerank.php');

    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    no, non funziona...
    cioè, se metto nella pagina index.php il codice
    $url = 'http://www.metatad.it/';
    e poi tutto il codice di Google, il risultato, quando richiamo l'echo, è sempre 8.
    Se invece metto come codice in index.php
    $url = 'http://www.metatad.it/';
    require('pagerank.php');
    e quindi lascio tutto il codice google in pagerank.php, il risultato è ancora 8; questo, sia che, in index.php, lo richiamo con un
    <? echo 'Google PageRank: '.getrank($_REQUEST["url"]).'/10'; ?>
    sia che lo richiami con un
    <? echo 'Google PageRank: '.$PR.'/10'; ?>
    mentre, in pagerank.php, definisco la variabile $PR così
    $PR = getrank($_REQUEST["url"]);
    Insomma, il problema sembra essere altrove...

  4. #4
    Originariamente inviato da metatad
    Insomma, il problema sembra essere altrove...
    no, basta che provi in locale per accorgertene ...

    il problema e' che quella funzione spara un notice perche' lavora con una variabile $url.

    se stai su register_global a on va quando appendi all' indirizzo tale variabile


    index.php?url=http://www.tuosito.it/

    se quella variabile non e' definita allora oltre al notice non riesce a calcolare l' url.

    Questo sempre che stiamo parlando della stessa versione, io dal tuo link ho preso quella "encodata", l' ho "scodata", letta, riadattata, testata .... se invece tu hai preso quella col source, che non ho visto, il problema potrebbe essere altrove.

    Comunque sia

    $PR = getrank($_REQUEST["url"]);

    se la get $url o la post $url non esistono, anche tu passi un valore nullo perche' $_REQUEST["url"] non esiste.



    infatti questa va:
    http://www.metatad.it/index2.php?url...ww.metatad.it/


    questa no
    http://www.metatad.it/index2.php
    ( ... e da appunto 8 ... )


    cosa cambia ? ... guarda caso non c'e' la url ...
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    probabilmente sono io che non capisco - e/o non mi spiego...
    premesso che sto utilizzando la versione col source e non quella encodata, quindi non so se ci siano differenze, e quali siano...
    rimane il fatto che, nella pratica , ho fatto dei tentativi, come ho provato a spiegare, attribuendo appunto alla variabile $url il valore http://www.metatad.it, ma comunque non mi restituisce il valore corretto...
    adesso, ho creato una pagina index.php che contiene solo i metatag, e tra questi ho messo
    <meta http-equiv="refresh" content="0;URL=http://www.metatad.it/index2.php?url=http://www.metatad.it/"
    />
    laddove index2.php è la vera prima pagina (con dentro il codice di pagerank), e così funziona bene.
    Solo che è decisamente una soluzione sporca, e non mi piace affatto.
    Forse dovrei provare a definire la variabile $url all'interno di pagerank.php... o magari provare a richiamare la stringa
    in qualche modo da index.php - che sò, magari trovando il modo per legarla alla funzione onLoad... - però poi come faccio ad evitare che venga caricata quest'altra pagina?

  6. #6
    guarda, ho visto il source che dici ... effettivamente cambia di poco ma cambia.

    Prima di fare il require di quella pagina scrivi questo:


    $_REQUEST["url"] = isset($_REQUEST["url"]) ? $_REQUEST["url"] : 'http://www.metatad.it/';

    ... e passa la paura


    P.S. dimenticavo, quello script non e' il massimo, con una url injections ti mando in Warning la pagina
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    OK!
    ora si che funge!...

    Thanx...
    PS
    Non so se il codice sia il massimo - non l'ho scritto io, viene dalla Google Community come sai - però... se è migliorabile... perchè non lo fai?

  8. #8
    Originariamente inviato da metatad
    se è migliorabile... perchè non lo fai?
    l' ho gia' fatto appeno ho visto lo script (ieri), dove ho ottimizzato del 40% il codice ed aggiunto un controllo, encodato a loro modo ed inviato ... scrivendo perche' l' avevo fatto ... oggi invece , vista la versione lievemente diversa del codice source che non avevo visto, gli ho inviato una nuova ed ulteriore versione, probilmente "lenta" come la vecchia (0.0008 prima della chiamata al file) , ma sicuramente piu' affidabile e soprattutto warnings e notice free.

    Vediamo se l' ignorano o la pubblicano, se l' ignorano non so se posso pubblicarla qui oppure no


    stay tuned
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    nice!...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.