MT5で、携帯対応の詳細検索を行う・・・その4

問題は、DivPages で作られるリンクなんです。数字から文字列に変換された後に実行されるので、URLの後ろには文字列(URLエンコードされている)が並びます。で、GETの文字列オーバーですね。
これを又、数字に戻してやればいいのですが、どうやって?

mt-realtime-rebuild.php を調べていると、最終的に fsockopen を使って、パラメータを渡しているんですが、受け取ったレスポンスは無視して、予め用意しておいたファイル名のファイルをinclude して終わっています。
中身を見てみると、PHPコードが含まれている結果のソースファイルでした。
include してPHPを実行するので、include する前に変換すれば何とかなるんじゃないかと思いました。

[php toolbar=”false”]
$buffa = file_get_contents($fname);
for($i=0; $i<76; $i++) {
$buffa = str_replace($data[0][$i], $data[1][$i], $buffa);
}
file_put_contents($fname, $buffa);
include($fname);
[/php]

UTF-8 でURLエンコードした文字列と数字の対比した配列を用意して、上のコードを追加しました。
mt-realtime-rebuild.php がこういう構造になっていなかったら無理な話だったのですが、ラッキーでした。これでうまく行きました。

以上で、携帯対応の詳細検索を行うための忘備録として終わりです。

コメントを残す

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