pingback

versuch13

Erfahrenes Mitglied
Hallo. Ich würde einen bestehenden Blog (eigene Entwicklung) gerne Pingbackfähig machen. Das heißt Pingback senden/empfangen. Ich finde Spezifikationen zum Thema, nur leider nichts womit ich so richtig etwas anfangen kann. Wenn möglich würde ich gerne auf Bibliotheken verzichten um mich direkt auch selbst intensiver mit dem Thema beschäftigen zu können. Vielleicht hat jemand von euch sowas schon mal realisiert, kann mir ein paar Links geben, Tips, irgendwas, ich bin über alles dankbar.
 
Da habe ich auch schon einen Blick drauf geworfen. Das blicke ich nur leider auch nicht ganz durch, Trackbacks stellen auch nicht so das große Problem dar bis auf die Rückgabewerte.

Wie schaffe ich es diesen Schnippsel XML

Code:
<?xml version="1.0"?>
<methodCall>
<methodName>pingback.ping</methodName>
<params>
<param>
<value>Quell URL</value>
</param>
<param>
<value>Ziel URL</value>
</param>
</params>
</methodCall>

an z.b. http://example.org/ping zu senden und auszwerten?

Hier ist mein Ansatz:

PHP:
            $hostname = '127.0.0.1';
                $url = 'http://127.0.0.1/pingback/ping.php';
                $xml =             '<?xml version="1.0"?>
                                    <methodCall>
                                        <methodName>pingback.ping</methodName>
                                        <params>
                                        <param>
                                        <value>'.$source.'</value>
                                        </param>
                                        <param>
                                        <value>'.$target.'</value>
                                        </param>
                                        </params>
                                    </methodCall>';                
                $fp = fsockopen($hostname, 80);
                fputs($fp, "POST ".$url." HTTP/1.1\r\n");
                fputs($fp, "Host: ".$hostname."\r\n");
                fputs($fp, "Content-Type: text/xml;");
                fputs($fp, "Content-length: ".strlen($xml)."\r\n");
                fputs($fp, "Connection: close\r\n\r\n");
                fputs($fp, $xml);
                fclose($fp);

Nur wie kann ich überhaupt festellen ob der Ping erfolgreich war und wie kann ich nun in dem Script welches empfängt die Daten auswerten?
 
Kann dazu niemand was sagen?

Den Ping absetzen und XML senden läuft nun, nur wie werte ich es am besten aus?

PHP:
            $pingserver = 'http://127.0.0.1/pingback/ping.php';
            $source = 'http://127.0.0.1/pingback/source-post.php';
            $target = 'http://127.0.0.1/pingback/blog-post.php';
    
          $xml = '<?xml version="1.0"?>
                        <methodCall>
                            <methodName>pingback.ping</methodName>
                            <params>
                            <param>
                            <value>'.$source.'</value>
                            </param>
                            <param>
                            <value>'.$target.'</value>
                            </param>
                            </params>
                        </methodCall>';
                            
            function do_call($host, $port, $request) {                                
                $fp = fsockopen($host, $port, $errno, $errstr);                
                $query = "POST /pingback/ping.php HTTP/1.0\nUser_Agent: pingback\nHost: ".$host."\nContent-Type: text/xml\nContent-Length: ".strlen($request)."\n\n".$request."\n";                        
                if(!fputs($fp, $query, strlen($query))) {                
                    $errstr = "Write error";                
                    return 0;                
                }                            
                fclose($fp);                      
            }            
            $host = '127.0.0.1';                
            $port = 80;                        
            do_call($host, $port, $xml);


Also wie kann ich jetzt im Script "/pingback/ping.php" welches die Daten empfängt am besten auf die XML Knoten zugreifen?
 
Zurück