Código PHP:
<?php
session_start();
require "leeplan-controller.php";
$PLANTELEFONIA=$_SESSION["PLANESCEL"];
$numplanes=count($PLANTELEFONIA);
echo "<?xml version='1.0' encoding='UTF-8' ?>";
?>
<consultaplanes>
<?php
for ($i=0;$i<$numplanes;$i++)
{
?>
<plan>
<nombre><?php echo $PLANTELEFONIA[$i]["descPlan"];?></nombre>
<codigo><?php echo $PLANTELEFONIA[$i]["idPlan"];?></codigo>
</plan>
<?php
}
?>
</consultaplanes> Código HTML:
<?xml version="1.0" encoding="UTF-8" ?> - <consultaplanes> - <plan> <nombre>Plan Multimedia 100 minutos todo destino</nombre> <codigo>M100</codigo> </plan> - <plan> <nombre>Plan Multimedia 200 minutos todo destino</nombre> <codigo>M200</codigo> </plan> - <plan> <nombre>BlackBerry 800 minutos todo destino</nombre> <codigo>BB800</codigo> </plan> - <plan> <nombre>Iphone 400 minutos todo destino</nombre> <codigo>IP400</codigo> </plan> </consultaplanes>
Código:
El inconveniente que tengo es que aparentemente extraigo el documento XML pero cuando trato de acceder al arbol DOM es como si estuviera vacío. Se que el elemento <select> lo debo construir por separado, pero mientras no logre tener acceso a la información no puedo hacer esta construcción, ¿alguien puede darme una idea de que estoy haciendo mal? function leePlanesAjax()
{
var ajax=newAjax();
ajax.open("GET", "leeplan-view.php", true); //no se enviaran datos, por eso modo GET
ajax.send(); //método send con argumento null, pues método de envío especificado es GET
ajax.onreadystatechange=function()
{
if (ajax.readyState==4)
{
xmlDoc=ajax.responseXML;
document.getElementById("pln").innerHTML=xmlDoc; // --> esto pone en la pagina el valor [objet]]
var plan=xmlDoc.getElementsByTagName("plan");
document.getElementById("pln").innerHTML=plan.length //-->esto pone en la pagina valor cero
nombre="";
codigo="";
for (i=0;i<plan.length;i++) //cantidad de nodos con tag "plan"
{
nombre=plan[i].childNodes[0].nodeValue + "<br/>"; //accede al primer nodo "plan" y a su vez al primer nodo hijo que corresponde al tag "nombre"
document.getElementById("pln").innerHTML=nombre;
codigo=plan[i].childNodes[1].nodeValue + "<br/>"; //accede al primer nodo "plan" y a su vez al segundo nodo hijo que corresponde al tag "codigo"
}
}
}
}
Muchas gracias


