PHP/XML/XSL的问题

PHP/XML/XSL的问题,php,xml,xslt,Php,Xml,Xslt,我正试图找出我可以做什么来创建一个代码,在XML文件中添加数据,而不是不断重写XML文件 我需要能够保存所有的表格条目,从现在起,每次提交表格。它创建一个新的XML文件并删除旧的XML文件 这可能真的很容易修复,或者我真的很笨,但我已经研究了DOM语法,没有看到可以通过修改什么来改变结果 // define configuration file name and path $configFile = 'abook.xml'; // if form not yet submitted // di

我正试图找出我可以做什么来创建一个代码,在XML文件中添加数据,而不是不断重写XML文件

我需要能够保存所有的表格条目,从现在起,每次提交表格。它创建一个新的XML文件并删除旧的XML文件

这可能真的很容易修复,或者我真的很笨,但我已经研究了DOM语法,没有看到可以通过修改什么来改变结果

// define configuration file name and path
$configFile = 'abook.xml';

// if form not yet submitted
// display form
if (!isset($_POST['submit'])) {

  // set up array with default parameters
  $data = array();
  $data['name'] = null;
  $data['email'] = null;
  $data['caddress'] = null;
  $data['city'] = null;
  $data['state'] = null;
  $data['zipcode'] = null;
  $data['phone'] = null;
  $data['pug'] = null;
  $data['comment'] = null;
  $data['subscribe'] = null;

  // read current configuration values
  // use them to pre-fill the form
  if (file_exists($configFile)) {
    $doc = new DOMDocument();
    $doc->preserveWhiteSpace = false;
    $doc->load($configFile);
    $address = $doc->getElementsByTagName('address');
    foreach ($address->item(0)->childNodes as $node) {
      $data[$node->nodeName] = $node->nodeValue; 

    }        
  }
中间是PHP表单和验证代码,最后我再次使用XML标记:

  // generate new XML document
  $doc = new DOMDocument();

  // create and attach root element <configuration> 
  $root = $doc->createElement('addressbook');
  $configuration = $doc->appendChild($root);

  // create and attach <oven> element under <configuration>
  $address = $doc->createElement('address');
  $configuration->appendChild($address);

  // write each configuration value to the file
  foreach ($config as $key => $value) {
    if (trim($value) != '') {
      $elem = $doc->createElement($key);
      $text = $doc->createTextNode($value);
      $address->appendChild($elem);
      $elem->appendChild($text);          
    }
  }

  // format XML output



  // save XML file
  $doc->formatOutput = true;
  $doc->save($configFile) or die('ERROR: Cannot write configuration file');      
  echo 'Thank you for filling out an application.';
}  
//生成新的XML文档
$doc=新的DOMDocument();
//创建并附加根元素
$root=$doc->createElement('addressbook');
$configuration=$doc->appendChild($root);
//在下创建并附着图元
$address=$doc->createElement('address');
$configuration->appendChild($address);
//将每个配置值写入文件
foreach($config as$key=>$value){
如果(修剪($value)!=''){
$elem=$doc->createElement($key);
$text=$doc->createTextNode($value);
$address->appendChild($elem);
$elem->appendChild($text);
}
}
//格式化XML输出
//保存XML文件
$doc->formatOutput=true;
$doc->save($configFile)或die('错误:无法写入配置文件');
echo‘感谢您填写申请表’;
}  
我真的是新的在这方面,所以我很抱歉,如果我的代码是相当混乱

第二部分我处理的是一个XSL文件,我已经链接到我的XML文件,但无论我使用什么语法进行转换,都无法将其保存在表中


同样,我不知道这是否是由于我设置PHP编写XML的方式造成的。

看起来您有两个不同的问题:(1)将XML记录附加到现有XML文档中;(2)通过XSLT转换XML。将XSL部分分成一个新问题,并显示您正在使用的XSLT。