Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/02/2010, 13:50
frikifib
 
Fecha de Ingreso: febrero-2010
Mensajes: 2
Antigüedad: 14 años, 9 meses
Puntos: 0
Generar XML e ir añadiendo nodos

buenas!
Estoy creando una banco de preguntas en xml, para ello tengo un formulario en html que llama a un php el cual se encarga de generar un XML.
Hasta ahí todo bien, el problema lo encuentro en el momento de buscar la raíz para añadirle un nodo. Fatal error: Call to undefined method stdClass::getElementById()
He estado buscando y la verdad es que ya no sé que hacer..

El archivo xml resultante debería tener esta pinta:

<?xml version="1.0"?>
<questions id='uno'>
<questio>
<pregunta>A que huelen las nubes?</pregunta>
<resposta>falsa</resposta>
</questio>
<questio>
<pregunta>A que saben las flores?</pregunta>
<resposta>falsa</resposta>
</questio>
</questions>

Código PHP:
<?php
  $doc 
= new DOMDocument();
  
$doc->validateOnParse true;
  
$doc->Load'../banc_preguntes.xml' );
  if( 
$doc=false) {
  
$doc = new DOMDocument("1.0");
  }
  
$doc->formatOutput true;

  
$r$doc->getElementById('questions');
  if( 
$r==null 
  {
      
$r $doc->createElement"questions" );
      
$r->setIdAttribute("xml:id"true);
      
$doc->appendChild$r );
  }

   
//Insercion de los datos de la pregunta
   
$b $doc->createElement"questio" );
 
   
$pregunta $doc->createElement"pregunta" );
   
$pregunta->appendChild$doc->createTextNode$_POST['pregunta'] ));
   
$b->appendChild$pregunta );
  
   
$answer $doc->createElement"resposta" );
   
$answer->appendChild$doc->createTextNode$_POST['resposta'] ));
   
$b->appendChild$answer );
 
   
$doc->appendChild$b );
   
$doc->save'../banc_preguntes.xml'  ); //guardo a XML
?>
Gracias y perdón por el sermón.