php updatin xml

0 Cevap php

merhaba ben bir xml dosyası var ve benim kod güncelleştirmek istediğiniz her biri takip ediyor

<gallerylist>
  <record>
    <movie>videos/15Avatar_HD.flv</movie>
    <title>Avatar1</title>
    <desc>It plays any kind of video file that Flash Player supports</desc>
    <preview>videos/previews/6avatar.jpg</preview>
    <imgplaylist>videos/imgplaylist/14p1.jpg</imgplaylist>
    <category>Action</category>
  </record>
</gallerylist>

ve benim php fonksiyonu aşağıdaki gibidir:

function xml_update_video($id,$searchString)
{
  $res=$this->selectVideo($id);
  $searchString = $searchString;
  $doc = new DOMDocument;
  $doc->formatOutput = TRUE;
  $doc->preserveWhiteSpace = FALSE;
  $doc->load('../playlist.xml');
  $xPath = new DOMXPath($doc);
  $query = sprintf('//record[./title[text()="%s"]]', $searchString);

  foreach($xPath->query($query) as $node)
  {     
    $node->parentNode->removeChild($node);       
  }       

  $gallerylist = $doc->getElementsByTagName( "gallerylist" )->item(0);        
  $record = $gallerylist->appendChild($doc->createElement('record')); 
  $movie = $record->appendChild($doc->createElement('movie'));
  $movie->appendChild($doc->createTextNode('videos/'.$res['videofile']));  
  $title = $record->appendChild($doc->createElement('title'));
  $title->appendChild($doc->createTextNode($res['title'])); 
  $desc = $record->appendChild($doc->createElement('desc'));
  $desc->appendChild($doc->createTextNode($res['description'])); 
  $preview = $record->appendChild($doc->createElement('preview'));
  $preview->appendChild($doc->createTextNode('videos/previews/'.$res['previewImage']));
  $imgplaylist = $record->appendChild($doc->createElement('imgplaylist'));
  $imgplaylist->appendChild($doc->createTextNode('videos/imgplaylist/'.$res['playlistImage']));  
  $category = $record->appendChild($doc->createElement('category'));  
  $category->appendChild($doc->createTextNode($res['category'])); 
  $doc->formatOutput = true;
  $test1 = $doc->saveXML(); 
  $doc->save('../playlist.xml');
 }

$ Id veritabanında video dosyasının id. id yardımıyla i title.This kodu düzgün çalışmıyor değil mi searchString temelinde düğüm silme sonra xml dosyasında yeni bir düğüm ekleme. yeni bir düğüm eklemek.

this file add new node .which is not right. this should be update existing node. but how ? can anyone help

0 Cevap