Jump to content
s3c0

Ler XML ASP

Recommended Posts

Prezados,

 

boa noite. Estou precisando de um help!

 

possuo um script que retorna o seguinte XML:

 

<tns:phpsysinfo xmlns:tns="http://phpsysinfo.sourceforge.net/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://phpsysinfo.sourceforge.net/ phpsysinfo3.xsd">
<Generation version="3.3.0" timestamp="1554324372"/>
<Options tempFormat="c" byteFormat="auto_binary" datetimeFormat="utc" refresh="60000" threshold="90"/>
<Vitals Hostname="WIN" IPAddr="127.0.0.1" Kernel="6.1.7600 (64-bit)" Distro="Microsoft Windows Server 2008 R2 Enterprise" Distroicon="WinVista.png" Uptime="204091" Users="0" LoadAvg="" CPULoad="0" SysLang="Portuguese - Brazil (1046)" CodePage="windows-1252" Processes="56" OS="WINNT"/>
<Network/>
<Hardware Name="VMware, Inc. VMware Virtual Platform">
<PCI>
<Device Name="PCI standard PCI-to-PCI bridge" Count="2"/>
<Device Name="PCI Express standard Root Port" Count="32"/>
<Device Name="Standard AHCI 1.0 Serial ATA Controller" Manufacturer="Standard AHCI 1.0 Serial ATA Controller"/>
<Device Name="Intel(R) PRO/1000 MT Network Connection" Manufacturer="Intel"/>
<Device Name="Intel(R) PRO/1000 MT Network Connection #2" Manufacturer="Intel"/>
<Device Name="Intel(R) PRO/1000 MT Network Connection #3" Manufacturer="Intel"/>
<Device Name="LSI Adapter, SAS 3000 series, 8-port with 1068" Manufacturer="LSI"/>
<Device Name="Intel 82371AB/EB PCI to ISA bridge (ISA mode)" Manufacturer="Intel"/>
<Device Name="VMware SVGA 3D" Manufacturer="VMware, Inc."/>
<Device Name="Intel(R) 82371AB/EB PCI Bus Master IDE Controller" Manufacturer="Intel"/>
<Device Name="VMware VMCI Bus Device" Manufacturer="VMware, Inc."/>
<Device Name="Intel 82443BX Pentium(R) II Processor to PCI Bridge" Manufacturer="Intel"/>
</PCI>
<IDE>
<Device Name="NECVMWar VMware SATA CD00 ATA Device"/>
</IDE>
<SCSI>
<Device Name="VMware Virtual disk SCSI Disk Device" Capacity="128849011200"/>
</SCSI>
<CPU>
<CpuCore Model="Intel(R) Xeon(R) CPU E3-1231 v3 @ 3.40GHz" CpuSpeed="3400" Cache="0"/>
<CpuCore Model="Intel(R) Xeon(R) CPU E3-1231 v3 @ 3.40GHz" CpuSpeed="3400" Cache="0"/>
<CpuCore Model="Intel(R) Xeon(R) CPU E3-1231 v3 @ 3.40GHz" CpuSpeed="3400" Cache="0"/>
<CpuCore Model="Intel(R) Xeon(R) CPU E3-1231 v3 @ 3.40GHz" CpuSpeed="3400" Cache="0"/>
</CPU>
</Hardware>
<Memory Free="1720385536" Used="2574114816" Total="4294500352" Percent="60">
<Swap Free="3048210432" Used="685768704" Total="3733979136" Percent="18">
<Mount MountPointID="1" FSType="swap" Name="SWAP" Free="3048210432" Used="685768704" Total="3733979136" Percent="18" MountPoint="C:\pagefile.sys"/>
</Swap>
</Memory>
<FileSystem>
<Mount MountPointID="1" FSType="" Name="Removable Disk (3 1/2 in.)" Free="0" Used="0" Total="0" Percent="0" MountPoint="A:"/>
<Mount MountPointID="2" FSType="NTFS" Name="Local Disk" Free="732983296" Used="128009076736" Total="128742060032" Percent="99" MountPoint="C:"/>
<Mount MountPointID="3" FSType="" Name="Compact Disc" Free="0" Used="0" Total="0" Percent="0" MountPoint="D:"/>
</FileSystem>
<MBInfo/>
<UPSInfo/>
<Plugins/>
<Errors/>
</tns:phpsysinfo>

tenho o seguinte código em ASP:

 

<%
  
  url_server = "http://127.0.0.1/xml.php?plugin=complete"

Set xmlhttp = Server.CreateObject("Microsoft.XMLHTTP")

  Call xmlhttp.open("GET", url_server, false)

  Call xmlhttp.send()

  strRetorno = xmlhttp.responseText

  Set oXmlDom = Server.CreateObject("Msxml2.DOMDocument.3.0")

  oXmlDom.loadXML strRetorno

  Set oNodes = oXmlDom.selectNodes("tns:phpsysinfo/FileSystem/Mount")

  for each oNode in oNodes
   

         response.write "Cache " & oNode.selectSingleNode("Percent").Text


 next

  Set oXmlDom = Nothing
%>

ao tentar trazer alguns valores, sempre me retorna o seguinte erro:

 

Erro de tempo de execução do Microsoft VBScript erro '800a01a8'

Objeto necessário: 'oNode.selectSingleNode(...)'

 

Preciso trazer os valores de:

CPU
Memory

HD

 

Alguém teria alguma dica de como consigo resolver?

 

Agradeço a atenção de todos.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By CrysMorais
      Boa tarde pessoal,
      Sou nova por aqui e também sou nova na programação, e gostaria da ajuda de alguém, se possível.
      Eu montei uma pagina que cria questionários, onde o usuário  pode criar perguntas com 4 tipos de respostas (Radio, Checkbox, Text e Number).
      Porém não sei como verificar se no questionário, foi criado pelo menos uma pergunta de cada tipo.
       
      Montei assim:
       
      <select name="tipoconsquestao" id="tipoconsquestao" style="color:#000000; font-size:9px; width:130px; ">
                   <option value="1" selected >Única escolha</option>
                   <option value="2">Múltipla escolha</option>
                   <option value="3">Texto livre</option>
                   <option value="4">Número livre</option>
      </select>
       
      Criei um bloco desses para cada tipo de pergunta:
       
      <%if (ArrayQuestions(6,i) = 1) then%>
      <td width="8%" align=center>
             <input name="<%=conta_grupo%>" data-sm-tipo="<%=ArrayQuestions(6,i)%>" data-sm-vrmaxquestao="<%=ArrayQuestions(11,i)%>" data-sm-questao-numero="<%=ArrayQuestions(2,i)%>"  data-sm- alternativa="<%=ArrayQuestions(3,i)%>" data-sm-questao="<%=conta_grupo%>" id="<%=conta_Alternativa%>" type="radio" value="<%=ArrayQuestions(3,i) %>" <%if ArrayQuestions(4,i) = 1 then response.write "checked"%>/>
      </td>
      <td width="92%" >&nbsp;&nbsp;&nbsp;<b><%=ArrayQuestions(1,i)%><b></td>
      <% end if %>
       
       
      Recebo aqui:
       
              var arrayquestoes = [];
              var arrayalternativas = [];
              var questionarioRadio = [];
              var questionarioCheck = [];
              var questionarioText = [];
              var questionarioNum = [];
       
      for (var i = 1; i <= n_grupos; i++) {
                  var countRadio = 0;
                  var countCheck = 0;
                  var countText = 0;
                  var countVrText = 0;
                  var countVariosVrText = 0;
                  var countNum = 0;
                  
                  $("[data-sm-questao='" + i + "']").each(function (index, value) {
                      var questao = $(this).attr("data-sm-questao-numero");
                      var alternativa = $(this).attr("data-sm-alternativa");
                      //alert(alternativa);
                      var vralternativa = $(this).val();
                      var tipoalternativa = $(this).attr("data-sm-tipo");
                      
                      
                      vrmaxtotalizacao = $(this).attr("data-sm-vrmaxquestao");
                      
                      
                      arrayquestoes[i - 1] = questao;
          
                      //==============================================================================================================    
                      // Verifica todos os campos tipo questão 1 (Radiobuttons) e carrega o array questionarioRadio com true ou false
                      //==============================================================================================================  
                      if (eval(tipoalternativa) == 1)
                      {
                          if (this.checked) {
                              questionarioRadio[countRadio] = true;
                              if (textoalternativas == '') {
                                  textoalternativas = questao + '|' + alternativa + '|' + 1;
                              }
                              else {
                                  textoalternativas = textoalternativas + ';'+ questao + '|' + alternativa + '|' + 1;
                              }
                          }
                          else
                          {
                              questionarioRadio[countRadio] = false;
                          }
                          countRadio = countRadio + 1;
                          //console.log(cont);
                          
                      }
       
       
          Faço a validação aqui:
       
                
       for (var k = 0; k < questionarioRadio.length; k++) {
                  if (questionarioRadio[k])
                  {
                      if (!saidafinalRadio)
                      {
                          saidafinalRadio = true;
                      }
                  }
              }
              if (questionarioRadio.length == 1)
              {
                  saidafinalRadio = true;
              }
      }
       
      if (!saidafinalRadio)
              {
                  alert('Por favor responda todas as questões de única escolha.');
                  return;
              }
       
       
      E mando para o banco de dados.
       
       
       
    • By robertolsilva
      Estou tentando importar um xml para mysql, porem, ele importa tudo certo, porem, so importa o primeiro produto, nao tras do segundo pra frente. Sera que alguem pode me ajudar?
      Segue abaixo o script:
       
       
      <?php
      //import.php
      sleep(3);
      $output = '';
      if(isset($_FILES['file']['name']) &&  $_FILES['file']['name'] != '')
      {
       $valid_extension = array('xml');
       $file_data = explode('.', $_FILES['file']['name']);
       $file_extension = end($file_data);
       if(in_array($file_extension, $valid_extension))
       {
        $data = simplexml_load_file($_FILES['file']['tmp_name']);
        $connect = new PDO('mysql:host=localhost;dbname=yemos_back','root', '');
        $query = "
        INSERT INTO tbsaida
         (tbsaida_pedcli, tbsaida_statusped, tbsaida_dt_solic, separacaoDtLimite, separacaoPrioridade, transportadora, tbsaida_idcli, tbsaida_cnpj, tbsaida_destinatario, cnpj, termosCondicoes, tbsaida_prod_codigo, tbsaida_prod_descricao, tbsaida_qtde_solic)
         VALUES(:numPedido, :status, :dtemissao, :separacaoDtLimite, :separacaoPrioridade, :transportadora, :erazaoSocial, :tbsaida_cnpj, :destinatario, :cnpj, :termosCondicoes, :codigo, :descricao, :qtde);
        ";
        $statement = $connect->prepare($query);
        for($i = 0; $i < count($data); $i++)
        {
         $statement->execute(
          array(
           ':numPedido'   => $data->pedido[$i]->numPedido,
           ':status'  => $data->pedido[$i]->status,
           ':dtemissao'  => $data->pedido[$i]->dtEmissao,
           ':separacaoDtLimite' => $data->pedido[$i]->separacaoDtLimite,
           ':separacaoPrioridade'   => $data->pedido[$i]->separacaoPrioridade,
           ':transportadora'   => $data->pedido[$i]->transportadora,
           ':erazaoSocial'   => $data->pedido[$i]->erazaoSocial,
           ':tbsaida_cnpj'   => $data->pedido[$i]->ecnpj,
           ':destinatario'   => $data->pedido[$i]->razaoSocial,
           ':cnpj'   => $data->pedido[$i]->cnpj,
           ':termosCondicoes'  => $data->pedido[$i]->termosCondicoes,
           ':codigo'   => $data->pedido[$i]->produto->codigo,
           ':descricao'   => $data->pedido[$i]->produto->descricao,
           ':qtde'   => $data->pedido[$i]->produto->qtde
          )
         );
        }
        $result = $statement->fetchAll();
        if(isset($result))
        {
         $output = '<div class="alert alert-success">Import Data Done</div>';
        }
       }
       else
       {
        $output = '<div class="alert alert-warning">Invalid File</div>';
       }
      }
      else
      {
       $output = '<div class="alert alert-warning">Please Select XML File</div>';
      }
      echo $output;
      ?>
       
    • By s3c0
      Prezados,
       
      Estou precisando consumir um JSON em ASP Classic, porém nunca me deparei com um resultado JSON desta maneira.
      {"Generation":{"@attributes":{"version":"3.3.0","timestamp":"1554501899"}},"Options":{"@attributes":{"tempFormat":"c","byteFormat":"auto_binary","datetimeFormat":"utc","refresh":"60000","threshold":"90"}},"Vitals":{"@attributes":{"Hostname":"WIN2K","IPAddr":"127.0.0.1","Kernel":"6.1.7600 (64-bit)","Distro":"Microsoft Windows Server 2008 R2 Enterprise","Distroicon":"WinVista.png","Uptime":"381618","Users":"0","LoadAvg":"","CPULoad":"0","SysLang":"Portuguese - Brazil (1046)","CodePage":"windows-1252","Processes":"58","OS":"WINNT"}},"Network":{},"Hardware":{"@attributes":{"Name":"VMware, Inc. VMware Virtual Platform"},"PCI":{"Device":[{"@attributes":{"Name":"PCI standard PCI-to-PCI bridge","Count":"2"}},{"@attributes":{"Name":"PCI Express standard Root Port","Count":"32"}},{"@attributes":{"Name":"Standard AHCI 1.0 Serial ATA Controller","Manufacturer":"Standard AHCI 1.0 Serial ATA Controller"}},{"@attributes":{"Name":"Intel(R) PRO\/1000 MT Network Connection","Manufacturer":"Intel"}},{"@attributes":{"Name":"Intel(R) PRO\/1000 MT Network Connection #2","Manufacturer":"Intel"}},{"@attributes":{"Name":"Intel(R) PRO\/1000 MT Network Connection #3","Manufacturer":"Intel"}},{"@attributes":{"Name":"LSI Adapter, SAS 3000 series, 8-port with 1068","Manufacturer":"LSI"}},{"@attributes":{"Name":"Intel 82371AB\/EB PCI to ISA bridge (ISA mode)","Manufacturer":"Intel"}},{"@attributes":{"Name":"VMware SVGA 3D","Manufacturer":"VMware, Inc."}},{"@attributes":{"Name":"Intel(R) 82371AB\/EB PCI Bus Master IDE Controller","Manufacturer":"Intel"}},{"@attributes":{"Name":"VMware VMCI Bus Device","Manufacturer":"VMware, Inc."}},{"@attributes":{"Name":"Intel 82443BX Pentium(R) II Processor to PCI Bridge","Manufacturer":"Intel"}}]},"IDE":{"Device":{"@attributes":{"Name":"NECVMWar VMware SATA CD00 ATA Device"}}},"SCSI":{"Device":{"@attributes":{"Name":"VMware Virtual disk SCSI Disk Device","Capacity":"128849011200"}}},"CPU":{"CpuCore":[{"@attributes":{"Model":"Intel(R) Xeon(R) CPU E3-1231 v3 @ 3.40GHz","CpuSpeed":"3400","Cache":"0"}},{"@attributes":{"Model":"Intel(R) Xeon(R) CPU E3-1231 v3 @ 3.40GHz","CpuSpeed":"3400","Cache":"0"}},{"@attributes":{"Model":"Intel(R) Xeon(R) CPU E3-1231 v3 @ 3.40GHz","CpuSpeed":"3400","Cache":"0"}},{"@attributes":{"Model":"Intel(R) Xeon(R) CPU E3-1231 v3 @ 3.40GHz","CpuSpeed":"3400","Cache":"0"}}]}},"Memory":{"@attributes":{"Free":"1575329792","Used":"2719170560","Total":"4294500352","Percent":"63"},"Swap":{"@attributes":{"Free":"2833252352","Used":"900726784","Total":"3733979136","Percent":"24"},"Mount":{"@attributes":{"MountPointID":"1","FSType":"swap","Name":"SWAP","Free":"2833252352","Used":"900726784","Total":"3733979136","Percent":"24","MountPoint":"C:\\pagefile.sys"}}}},"FileSystem":{"Mount":[{"@attributes":{"MountPointID":"1","FSType":"","Name":"Removable Disk (3 1\/2 in.)","Free":"0","Used":"0","Total":"0","Percent":"0","MountPoint":"A:"}},{"@attributes":{"MountPointID":"2","FSType":"NTFS","Name":"Local Disk","Free":"16396288","Used":"128725663744","Total":"128742060032","Percent":"100","MountPoint":"C:"}},{"@attributes":{"MountPointID":"3","FSType":"","Name":"Compact Disc","Free":"0","Used":"0","Total":"0","Percent":"0","MountPoint":"D:"}}]},"MBInfo":{},"UPSInfo":{},"Plugins":{},"Errors":{}} Preciso pegar alguns valores desse resultado.
       
      Esses valores são CPULoad, Memory e Hard Disk.
       
      oJSON.loadJSON("http://127.0.0.1/xml.php?plugin=complete&json") 'Loop through collection For Each dados In oJSON.data("Vitals") Set this = oJSON.data("Vitals").item(dados) processador = this.item("CPULoad") Next For Each dados In oJSON.data("Memory") Set this = oJSON.data("Memory").item(dados) memoria = this.item("Total") Next For Each dados In oJSON.data("FileSystem") Set this = oJSON.data("FileSystem").item(dados) if this.item("MountPointID") = "2" then hd = this.item("Percent") end if Next  
      Tentei de algumas formas, mas sem sucesso.
       
      Alguém teria alguma idéia de como posso pegar esses valores?
       
      Agradeço a atenção de todos.
    • By Gustavo2503
      fgets() não funciona em xml versão 4.00, só funciona na versão 3.10
      $arquivo = $_FILES['arquivo']["tmp_name"]; $xml = fopen($arquivo, 'r'); while(!feof($xml)){ $linha = fgets($xml); if (!$linha){ $linha = "Erro"; } } echo $linha; Ele retorna "Erro" quando o xml está na versão 4.00. Como arruma isso?
    • By laumello12
      Galera ajudinha
      Como faço para consumir um web service pronto em um projeto. Preciso só que ele busque no web service e traga na web 
      HELP
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.