-2
session_start();
$xml = simplexml_load_file('Gebruikers.xml');
$gebruiker = $xml->xpath('root[Login="'.$_SESSION['Login'].'"]');
$coordinates = $gebruiker[0]->addChild('coordinates');
$coordinates->addChild("X",$_GET["X"]);
$coordinates->addChild("Y",$_GET["Y"]);
file_put_contents('Gebruikers.xml', $xml->asXML());

XML 文件

<root>
    <gebruiker>
        <Login>Tom</Login>
        <Wachtwoord>123</Wachtwoord>
    </gebruiker>
</root>

收到这些错误:

  • 注意:未定义的偏移量:第 6 行 C:\xampp\htdocs\Tom\Project PHP\ProjectPHP_HTML\Coordinaten.php 中的 0
  • 致命错误:在第 6 行的 C:\xampp\htdocs\Tom\Project PHP\ProjectPHP_HTML\Coordinaten.php 中的非对象上调用成员函数 addChild()

我被困住了..请帮帮我。

4

1 回答 1

1

的 xpath$gebruiker是错误的,而是这样做:

$gebruiker = $xml->xpath('gebruiker[Login="'.$_SESSION['Login'].'"]');

你做了什么...

... xpath('root[Login="'.$_SESSION['Login'].'"]');

意思是:找到一个<login>$_SESSION['login']如下的节点<root>,但是没有这样的节点,它在下面<gebruikers>

顺便说一句,而不是file_put_contents('Gebruikers.xml', $xml->asXML());

你可以做$xml->asXML('myfile.xml');

看到它工作:http ://codepad.viper-7.com/9p2MYb

于 2013-05-18T15:43:14.527 回答