Pagerank-Anzeige

  • Hallo!

    So langsam werd ich verrückt.
    Ich versuche jetzt schon seit Stunden eine Pagerank-Anzeige auf meine Seite zu basteln, aber das will einfach nich....

    Mal gehts mal nicht - local (xampp) gehts immer.

    Also ich hab nen Wenkatalog auf meiner Seite mit PR-Anzeige - die funzt wunderbar: z.B. hier: http://werbehalle.de/webkatalog/index.php?c=34

    Der Katalog verwendet diese Script für den Pagerank

    Wenn ich dieses Script ohne den Katalog verwende funzt es nur auf XAMPP

    Wiso?

    Gibt ja noch mehr so ähnliche Scripte - da is der gleiche Mist

    Also ich kann jetzt nicht wirklich sagen wiso das im Katolog funzt - durch das Smarty-Gewäsch steig ich nich so ganz durch.

    Aber die ganzen anderen Scripte funzen ja auch nicht.

    Hat einer ne Idee?

    Gruß, Donkey

  • also ich hab das jetzt so:

    pr.php


    index.php

    PHP
    <?php
    error_reporting(E_ALL);
    ini_set("display_errors", 1);
    
    
    include ('pr.php');
    echo get_page_rank('http://werbehalle.de');
    ?>

    Die angegebene Seite hat Pagerank 2

    Angezeigt wird jetzt: -1-1

  • -1 kommt, weil in der Funktion get_page_rank() am Anfang der Standardwert einfach mal auf -1 gesetzt wird. Das heisst also, dass die Funktion den Wert nicht richtig holen konnte. Zweimal ausgegeben wird es, weil du am Ende der Funktion ein echo $pagerank; machst - und dann in der index.php nochmal.

    Geh mal die Funktion get_page_rank() durch und lass dir Schritt für Schritt alle wichtigen Variablen ausgeben, und schau mal wann das Script versagt. Debugging nennt sich das.

  • Ergänzung zu dem Beitrag von phore:

    Richtig debuggen
    1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
    2. Man schreibt an den Anfang des Scriptes die Zeile: error_reporting(E_ALL); und ini_set("display_errors", true);
    3. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
    4. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
    5. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
    6. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
    7. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
    8. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

  • Nun grundsätzlich funktioniert das Script ja einwandfrei.

    Aber eben nur auf XAMPP, also Lokal oder in Verbindung mit diesem Webkatalog (wo dieses Script ja eigentlich dazu gehört) - auch auf dem Server

    So ist das aber auch bei allen anderen Scripts die man zu Thema Pagerank so findet.
    Auf dem eigenen Rechner gehts, auf dem Server nichtmehr - das is doch nich normal...

  • Falsch. Es funktioniert nicht aus irgendwelchen esoterischen Gründen einfach nicht auf dem Server, sondern, da ist etwas drin, was auf dem Server offenbar Fehler verursacht, bzw. das Script nicht richtig laufen kann. Also mach mal was bandit gepostet hat, und zwar erstmal in der funtion get_page_rank(). Ohne etwas Einsatz von dir selber löst sich das Problem nicht.

  • Also ich hab das mit dem Debuggen jetzt mal zumindest versucht.

    Fehler konnt ich jetzt nicht wirklich feststellen - allerdings kenn ich mich bei dem Script auch nicht wirklich aus.

    Hab aber gelesen dass es auch an den Servereinstellungen liegen kann, wenn man eine URL mit fopen öffnen will (mir fällt jetzt grade der Name der Einstellung nichtmehr ein)
    Da muss man dann was in der php-ini verändern, aber auf die hab ich kein Zugriff.
    Geht das auch mit htaccess?