トラックバック送信後、戻り値の確認

Posted by Koumei on 7月 27, 2010 in webプログラミング |

 トラックバックを送信するのはフォームでもできる。
 送りっぱなしである。
 ちゃんとやるなら、相手の戻りを確認しなければならない。
 送りっぱなしなら簡単だし、待ち時間もいらない。
 それもひとつの選択肢ではあるが・・・

 とりあえず戻り値を確認するようにしよう。
 XML形式で戻されるが、前に書いたように「<error>戻り値</error>」の部分だけ解釈しても良い。
 「0」なら成功、それ以外なら失敗である。

 さてどうやるか。
 XAMをパースして、連想配列に入れて、そこから読み出して・・・
 面倒である。
 ヒントは、エラータグで囲まれた部分だけが必要で、しかもそのタグは1回しか出てこないのである。

関数内だとして・・・

	// ソケットオープン
	if (!$sock = fsockopen($host , 80 , $errNo , $errStr , 3)){
	    return "Socket Open Error";
	}

	// 送信
	fputs($sock , $senddata);

	//相手からの戻りを受け取る
	while(!feof($sock)){
		$res = fgets($sock);
	}

	//戻り値を取り出す
	return preg_match_all("|<error>(.*?)</error>|","", $res);

 
 最後のpreg_match_all部分で取り出せる。
 1行である。

 もうちょっと細かくやるなら、「0」以外ならメッセージを取り出すと良いだろう。

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

Copyright © 2009-2010 Koumei Soft 開発ログ All rights reserved.
Desk Mess Mirrored v1.6 theme from BuyNowShop.com.