Так вот моя проблема! Я использую simplexml на своем веб-сайте в качестве замены для MySQL, потому что я использую мобильный телефон, который отлично работает с запросом addChild, но когда он отправляет его, он переопределяет исходный файл xml или хорошо объясняет его с помощью XML-файла кода:
<?xml version="1.0"?> <video><title>title 22</title></video>
Файл Php:
<?php $file = 'database.xml'; $title = $_POST['1']; $xml = simplexml_load_file($file); $xmlne = $xml->videos; $d = "<video></video>"; $newvid = new SimpleXMLElement($d); $newvid->addChild('title' , $title); $newvid->asXML($file); ?> <form action="index.php" method="post"> <input type="text" value="title" name="1"> <input type="submit" value="post"/> </form>
Проблема заключается в том, что эта строка создает новый XML-документ, полностью отделенный от исходного файла:
$newvid = new SimpleXMLElement($d);
Затем вы добавляете элемент в свой новый документ и сохраняете исходное имя файла, теряя исходный файл.
То, что вы на самом деле хотите сделать, это добавить новый элемент Video в существующий документ, который вы загрузили как $xml
а затем пройдены, чтобы найти $xmlne
:
$newvid = $xmlne->addChild('video');