PHPを使用してXMLにノードを追加しようとすると、PHPとImにとって本当に新しいです。フォームを使用してPHPを使用してXMLにノードを追加する
これは私のcomments.phpファイルです:
<?php
$date = "http://jdrag.x10.mx/comments_file.xml";
$xml = simplexml_load_string($data);
$commentt = $xml->addChild("comment");
$name = $_POST["cname"];
$email = $_POST["cemail"];
$comment = $_POST["comment"];
$commentt->addChild("name", $name);
$commentt->addChild("email", $email);
$commentt->addChild("commentInside", $comment);
echo $xml->saveXML();
?>
マイcomments.htmlは次のとおりです。
<form action="comments.php" method="post">
Name: <input type="text" name="cname" />
Email: <input type="text" name="cemail" />
Comment: <input type="text" name="comment" />
<input type="submit" />
</form>
あなたは私のXMLファイルを見ることができるようにcomments
タグシンプルさ:http://jdrag.x10.mx/comments_file.xml
しかし、フォームを提出すると、私はこのエラーになります:
Fatal error: Call to a member function addChild() on a non-object in /home/jdragx10/public_html/comments.php on line 5
私はPHPに慣れていないので、どういう意味か、それをどう修正するのか分かりません。 私のコードを修正できる人には、事前に感謝します。
質問ノードを追加して実際のファイルに保存することは可能ですか?たとえば、フォームを送信すると、結果が表示されます。しかし、私はそれを編集したい:http://jdrag.x10.mx/comments_file.xml。あなたが見ることができるように私はデータベースを使用せずにコメントシステムを作成しようとしています。コメントをXMLファイルに送信し、AJAXを使用してそれぞれの「コメント」を受け取ります。しかし、今は私が欲しいことをやっていない。 – Shawn31313
はい、閉鎖された他の質問と、ここでは数十件の質問があります。結果を「保存」するのは、 'saveXML()'の代わりに 'asXML(...)'を使うのと同じくらい簡単です。 [マニュアルを読む](http://php.net/simplexmlelement.asxml)を参照してください。 – salathe