1

フォーム データを (_POST 経由で) 取得し、SimpleXML を使用してドキュメントに書き込もうとしています。これは私が試したものであり、動作させることができないようです。

<?php
$title = $_POST['title'];
$link = $_POST['link'];
$description = $_POST['description'];

$rss = new SimpleXMLElement($xmlstr);
$rss->loadfile("feed.xml");

$item = $rss->channel->addChild('item');
$item->addChild('title', $title);
$item->addChild('link', $link);
$item->addChild('description', $description);

echo $rss->asXML();

header("Location: /success.html"); 

  exit;
?>

正しい方向への助けやポイントをいただければ幸いです。

4

3 に答える 3

1

asXML() 関数の使い方が間違っています。XML をファイルに書き込む場合は、ファイル名パラメーターを渡す必要があります。SimpleXMLElement::asXML マニュアルを確認してください

したがって、xmlを出力するコード行をから変更する必要があります

echo $rss->asXML();

$rss->asXML('myNewlyCreatedXML.xml');
于 2013-10-09T12:54:21.537 に答える
0

SimpleXMLElement を使用するのではなく、このように直接 XML を作成できます

$xml = '<?xml version="1.0" encoding="utf-8"?>';
$xml .= '<item>';
$xml .= '<title>'.$title.'</title>';
$xml .= '<link>'.$title.'</link>';
$xml .= '<description>'.$title.'</description>';
$xml .= '</item>';
$xml_file = "feed.xml";
file_put_contents($xml_file,$xml);

これはあなたを助けるかもしれません

于 2013-10-09T12:32:44.543 に答える