Ver Mensaje Individual
  #3 (permalink)  
Antiguo 17/06/2015, 10:57
Avatar de BREIQ
BREIQ
 
Fecha de Ingreso: diciembre-2011
Mensajes: 36
Antigüedad: 12 años, 5 meses
Puntos: 2
Respuesta: Editar XML con base de datos.

Me aparece este error.

Que no puedo modificar nodos existentes. No tengo problemas para crearlos, aun que aveces se me duplican, pero se lo achaco mas a mi navegador.

Cita:
Error:
"Indirect modification of overloaded element of SimpleXMLElement has no effect"
Saludos y gracias por la pronta respuesta.


Edito:

Update del codigo. Gracias.

Código PHP:
Ver original
  1. <?php
  2.   $db = simplexml_load_file("xml/radioControl.xml");
  3.   $countID = count($db->radios->radio);
  4.  
  5.   if($_POST[id] == 'nuevaEntrada'){
  6.     $_POST[id] = $countID;
  7.  
  8.     $radioNueva = $db->radios->addChild('radio');
  9.     $radioNueva->addChild('id', 'R'.$_POST[id]);
  10.     $radioNueva->addChild('modelo', $_POST[modelo]);
  11.     $radioNueva->addChild('marca', $_POST[marca]);
  12.     $radioNueva->addChild('sn', $_POST[sn]);
  13.     $radioNueva->addChild('ubicacion', $_POST[ubicacion]);
  14.     $radioNueva->addChild('notas', $_POST[notas]);
  15.  
  16.     $piezas = $radioNueva->addChild('piezas');
  17.     $piezas->addChild('radio', $_POST[radio]);
  18.     $piezas->addChild('bateria', $_POST[bateria]);
  19.     $piezas->addChild('antena', $_POST[antena]);
  20.     $piezas->addChild('base', $_POST[base]);
  21.     $piezas->addChild('cargador', $_POST[cargador]);
  22.     $piezas->addChild('caja', $_POST[caja]);
  23.  
  24.   }else{
  25.     $numeroNodo = substr($_POST[id], 1);
  26.  
  27.     $db->radios->radio[$numeroNodo]->id =$_POST[id];
  28.     $db->radios->radio[$numeroNodo]->modelo =$_POST[modelo];
  29.     $db->radios->radio[$numeroNodo]->marca =$_POST[marca];
  30.     $db->radios->radio[$numeroNodo]->sn =$_POST[sn];
  31.     $db->radios->radio[$numeroNodo]->ubicacion =$_POST[ubicacion];
  32.     $db->radios->radio[$numeroNodo]->notas =$_POST[notas];
  33.  
  34.     $db->radios->radio[$numeroNodo]->piezas->radio =$_POST[radio];
  35.     $db->radios->radio[$numeroNodo]->piezas->bateria =$_POST[bateria];
  36.     $db->radios->radio[$numeroNodo]->piezas->antena =$_POST[antena];
  37.     $db->radios->radio[$numeroNodo]->piezas->base =$_POST[base];
  38.     $db->radios->radio[$numeroNodo]->piezas->cargador =$_POST[cargador];
  39.     $db->radios->radio[$numeroNodo]->piezas->caja =$_POST[caja];
  40.  
  41.   };
  42.  
  43.   $db->saveXML('xml/radioControl.xml');
  44.   header('Location: http://127.0.0.1');
  45.  
  46. ?>

Última edición por BREIQ; 17/06/2015 a las 12:00