Ver Mensaje Individual
  #4 (permalink)  
Antiguo 20/06/2015, 10:08
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.

Ya logre solucionar el problema. La cuestion era que cuando trataba de utilizar el nodo no me detectava el valor como numero, asi que solo le puse un intval(); Dejo el codigo para si alguienb sufre algun dia lo mismo.

Código PHP:
Ver original
  1. <?php
  2.   $db = simplexml_load_file("xml/radioControl.xml"); //Leer base de datos XML
  3.   $countID = count($db->radios->radio); //Contar radios existentes en base de datos
  4.  
  5. /* Tomar datos del formulario */
  6.   $id = $_POST['id'];
  7.   $marca = $_POST['marca'];
  8.   $modelo = $_POST['modelo'];
  9.   $sn = $_POST['sn'];
  10.   $ubicacion = $_POST['ubicacion'];
  11.   $notas = $_POST['notas'];
  12.   $radio = $_POST['radio'];
  13.   $bateria = $_POST['bateria'];
  14.   $antena = $_POST['antena'];
  15.   $base = $_POST['base'];
  16.   $cargador = $_POST['cargador'];
  17.   $caja = $_POST['caja'];
  18.  
  19. /* Editar base de datos */
  20.   if($id == 'nuevaEntrada'){ //Crear radio nueva
  21.     $id = $countID;
  22.  
  23.     $radioNueva = $db->radios->addChild('radio');
  24.     $radioNueva->addChild('id', 'R'.$id);
  25.     $radioNueva->addChild('marca', $marca);
  26.     $radioNueva->addChild('modelo', $modelo);
  27.     $radioNueva->addChild('sn', $sn);
  28.     $radioNueva->addChild('ubicacion', $ubicacion);
  29.     $radioNueva->addChild('notas', $notas);
  30.  
  31.     $piezas = $radioNueva->addChild('piezas');
  32.     $piezas->addChild('radio', $radio);
  33.     $piezas->addChild('bateria', $bateria);
  34.     $piezas->addChild('antena', $antena);
  35.     $piezas->addChild('base', $base);
  36.     $piezas->addChild('cargador', $cargador);
  37.     $piezas->addChild('caja', $caja);
  38.  
  39.   }else{ //Editar radio existente
  40.     $id = intval($id);
  41.  
  42.     $db->radios->radio[$id]->marca = $marca;
  43.     $db->radios->radio[$id]->modelo = $modelo;
  44.     $db->radios->radio[$id]->sn = $sn;
  45.     $db->radios->radio[$id]->ubicacion = $ubicacion;
  46.     $db->radios->radio[$id]->notas = $notas;
  47.  
  48.     $db->radios->radio[$id]->piezas->radio = $radio;
  49.     $db->radios->radio[$id]->piezas->bateria = $bateria;
  50.     $db->radios->radio[$id]->piezas->antena = $antena;
  51.     $db->radios->radio[$id]->piezas->base = $base;
  52.     $db->radios->radio[$id]->piezas->cargador = $cargador;
  53.     $db->radios->radio[$id]->piezas->caja = $caja;
  54.  
  55.   };
  56.  
  57.   $db->saveXML('xml/radioControl.xml'); //Salvar XML
  58.   header("Location: http://127.0.0.1"); //Enviar a la pagina principal
  59.  
  60. ?>