Varolan bir XML dosyasına yeni veri eklemek için çalışıyordu, ama işe yaramıyor. İşte benim xml dosyasıdır:
<list>
<activity>swimming</activity>
<activity>running</activity>
<list>
Bu dosyada ne görüntüler ve yeni unsurlar eklemek için bir alan sağlayan bir indeks sayfası, ve XML dosyasına veri eklemek bir php sayfa: Şimdi benim fikrim iki dosya yapıyordu. İşte index.php için kod:
<html>
<head><title>test</title></head>
</head>
<?php
$xmldoc = new DOMDocument();
$xmldoc->load('sample.xml', LIBXML_NOBLANKS);
$activities = = $xmldoc->firstChild->firstChild;
if($activities!=null){
while(activities!=null){
echo $activities->textContent.'<br/>';
activities = activities->nextSibling.
}
}
?>
<form name='input' action='insert.php' method='post'>
insert activity:
<input type='text' name='activity'/>
<input type='submit' value='send'/>
</form>
</body>
</html
ve burada insert.php için kod:
<?php
header('Location:index.php');
$xmldoc = new DOMDocument();
$xmldoc->load('sample.xml');
$newAct = $_POST['activity'];
$root = $xmldoc->firstChild;
$newElement = $xmldoc->createElement('activity');
$root->appendChild($newElement);
$newText = $xmldoc->createTextNode($newAct);
$newElement->appendChild($newText);
$xmldoc->save('sample.xml');
?>
Kullanıcı, XML dosyasında bulunan mevcut faaliyetlerin bir listesini görmek istiyorsunuz index.php, ve o yeni aktiviteler ekleyebilirsiniz nerede altına bir metin alanına erişmek için olduğunu. Gönder butonuna tıkladıktan sonra, sayfa, bir DOM ağacındaki XML dosyasını açar kök düğümü altında yeni bir düğüm ekler ve kullanıcı olması gereken yerde, index.php sayfasına geri çağıran bir kod içeren, insert.php dediğimiz başkalarının kapsamındaki faaliyetlerin listesini, orada onun yeni etkinliği görmek mümkün. Bu çalışmıyor. I yeni bir girdi, sayfaları ferahlatır göndermek için butona tıklayın ve görünüşte hiçbir şey olmuyor, XML önce olduğu gibi aynıdır. Ben yanlış ne yaptı? Ayrıca, bunu yapmanın daha iyi bir yolu olup olmadığını bilmek istiyorum.