重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

こんにちは

PHPでXMLファイルを読み込み、それをそのままFlashに渡しFlash側でXMLをパーサしようと、このように書きました

-------------------------------------------------------
(PHP)

<?php
$url = 'test.xml';
$h = fopen($url, "r");
$result_xml= '';
while(!feof($h))
{
$result_xml.= fread($h, 4096);
}
fclose($h);
echo "&data=$result_xml&";
?>

-------------------------------------------------------
(Flash)

var xml:XML = new XML();
xml.load("work.php");
xml.onLoad = function(success:Boolean):Void {
if (success) {
trace(this.data);
}
};
-------------------------------------------------------
するとtraceの結果はundefinedでした。
PHPの出力結果が文字列型だということが原因のような気がするのですが、PHP側から文字列で出力するのではなく、XMLで出力するにはどうしたらよいでしょうか?

リファレンスを探してみたのですが、なかなかそういった関数が見つかりませんでした。

よろしくお願いします。

A 回答 (1件)

content-typeの設定がなされていないからじゃないかな


defaultはphp.iniに記述されていると思うけど通常「text/html」となっていると思う。
最低でも「text/xml」にしなければFLASHはxmlとして受け取ってくれないかも。

http://jp.php.net/manual/ja/function.header.php
http://www.google.co.jp/search?q=cgi%20content-t …
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます

すみません 大嘘をついていました。。。

下記のサイトでやりたいことと似ているサンプルを紹介されていたのでソースを呼んでみると、file_get_contents関数というものを使えばよかったみたいです
http://www.tatamilab.jp/rnd/archives/000412.html

PHPは実は今日はじめて触ってまだ良くわかっていないのですが教えていただいた設定の問題も後で読ませてもらいます

ありがとうございました

お礼日時:2007/10/01 18:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!