1

私のサイトでは、次の機能を実装しました。ユーザーがボタンをクリックすると、XMLファイルを生成するPHP関数がトリガーされます(そのPHP関数はAJAXによって呼び出されます)。すべてが正常に機能していますが、変更したいことが1つあります。サーバーマシン上に.XMLファイルを作成したくないということです。代わりに、.XMLファイルをローカルに保存するようにユーザーに求めるプロンプトを表示したいと思います。それ、どうやったら出来るの?私のPHPスクリプトは現在次のようになっています。

$xml = new DOMDocument("1.0", "UTF-8");
$rootElement = $xml->appendChild($xml->createElement("SomeNodeName"));
...

// the following doesn't really work - xml doesn't get formatted :)
$xml->formatOutput = true; 

// this creates the actual file and places it on server. that's not what i need
$xml->save("MyXMLfile.xml"); 

すべての助けをありがとう。

4

1 に答える 1

1

すべてのWebコンテンツにはヘッダーがあるため、xmlファイルのヘッダーを指定すると(header()適切なコードで関数を使用することで機能します。これは、次のようなことを意味します。

<?php
header('Content-type: text/xml');

// set the filename
header('Content-Disposition: attachment; filename="pwet.xml"');

// echo the content here
echo $xml; // simply like this, maybe?
于 2011-02-15T21:05:52.123 に答える