Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

allyson abreu

obetendo dados de XML por php e enviando para BD

Recommended Posts

ola pessoal, sou novo na área de desenvolvimento php e estou tentando fazer uma integração da minha loja virtual com um wbservice que fornece os produtos, consegui fazer a chamada do wbservice e ele me retorna um xml so que eu n estou conseguindo ler o mesmo para que possa enviar os dados para o banco de dados

 

segue o codigo q estou usando para ler o arquivo e o xml que recebo do webservice

<h1>codigo itens</h1> 
<?php 
$link2 = "http://todcara.com/teste/allnations-soapui-project.xml"; //link do arquivo xml 
$xml2 = simplexml_load_file($link2) -> channel; //carrega o arquivo XML e retornando um Array 

foreach($xml2 -> Produtos as $Produtos2){ //faz o loop nas tag com o nome "item" 
//exibe o valor das tags que estão dentro da tag "item" 
//utilizamos a função "utf8_decode" para exibir os caracteres corretamente 
echo "<strong>codigo:</strong> ".utf8_decode($Produtos2 -> CODIGO)."<br />"; 
echo "<strong>Link:</strong> ".utf8_decode($Produtos2 -> link)."<br />"; 
echo "<strong>Descrição:</strong> ".utf8_decode($Produtos2 -> description)."<br />"; 
echo "<strong>Autor:</strong> ".utf8_decode($Produtos2 -> author)."<br />"; 
echo "<strong>Data:</strong> ".utf8_decode($Produtos2 -> pubDate)."<br />"; 
echo "<br />"; 
} //fim do foreach 
?>
 
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <RetornarListaProdutosResponse xmlns="http://allnations/wsintegracao/">
         <RetornarListaProdutosResult>
            <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
               <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true">
                  <xs:complexType>
                     <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element name="Produtos">
                           <xs:complexType>
                              <xs:sequence>
                                 <xs:element name="TIMESTAMP" type="xs:dateTime" minOccurs="0"/>
                                 <xs:element name="DEPARTAMENTO" type="xs:string" minOccurs="0"/>
                                 <xs:element name="CATEGORIA" type="xs:string" minOccurs="0"/>
                                 <xs:element name="SUBCATEGORIA" type="xs:string" minOccurs="0"/>
                                 <xs:element name="FABRICANTE" type="xs:string" minOccurs="0"/>
                                 <xs:element name="CODIGO" type="xs:string" minOccurs="0"/>
                                 <xs:element name="DESCRICAO" type="xs:string" minOccurs="0"/>
                                 <xs:element name="DESCRTEC" type="xs:string" minOccurs="0"/>
                                 <xs:element name="PARTNUMBER" type="xs:string" minOccurs="0"/>
                                 <xs:element name="EAN" type="xs:string" minOccurs="0"/>
                                 <xs:element name="GARANTIA" type="xs:int" minOccurs="0"/>
                                 <xs:element name="PESOKG" type="xs:decimal" minOccurs="0"/>
                                 <xs:element name="PRECOREVENDA" type="xs:decimal" minOccurs="0"/>
                                 <xs:element name="DISPONIVEL" type="xs:int" minOccurs="0"/>
                                 <xs:element name="URLFOTOPRODUTO" type="xs:string" minOccurs="0"/>
                                 <xs:element name="ESTOQUE" type="xs:string" minOccurs="0"/>
                                 <xs:element name="NCM" type="xs:string" minOccurs="0"/>
                                 <xs:element name="LARGURA" type="xs:decimal" minOccurs="0"/>
                                 <xs:element name="ALTURA" type="xs:decimal" minOccurs="0"/>
                                 <xs:element name="PROFUNDIDADE" type="xs:decimal" minOccurs="0"/>
                                 <xs:element name="ATIVO" type="xs:int" minOccurs="0"/>
                                 <xs:element name="SUBSTTRIBUTARIA" type="xs:int" minOccurs="0"/>
                                 <xs:element name="ORIGEMPRODUTO" type="xs:string" minOccurs="0"/>
                              </xs:sequence>
                           </xs:complexType>
                        </xs:element>
                     </xs:choice>
                  </xs:complexType>
               </xs:element>
            </xs:schema>
            <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
               <NewDataSet xmlns="">
                  <Produtos diffgr:id="Produtos1" msdata:rowOrder="0">
                     <TIMESTAMP>2015-08-05T09:43:37-03:00</TIMESTAMP>
                     <DEPARTAMENTO>ACESSÓRIOS COMPUTADORES</DEPARTAMENTO>
                     <CATEGORIA>AUDIO</CATEGORIA>
                     <SUBCATEGORIA>FONES E HEADSETS</SUBCATEGORIA>
                     <FABRICANTE>GENIUS</FABRICANTE>
                     <CODIGO>0040712</CODIGO>
                     <DESCRICAO>HEADSET GENIUS HS-200C - 31710151100</DESCRICAO>
                     <DESCRTEC>• A Genius apresenta seu moderno e leve fone HS-200C</DESCRTEC>
                     <PARTNUMBER>31710151100</PARTNUMBER>
                     <EAN>4710268235439</EAN>
                     <GARANTIA>12</GARANTIA>
                     <PESOKG>0.1000</PESOKG>
                     <PRECOREVENDA>14.6400</PRECOREVENDA>
                     <DISPONIVEL>1</DISPONIVEL>
                     <URLFOTOPRODUTO>http://images.allnations.com.br/imagens/produtos/imagemSite.aspx?h=196&l=246&src=0040712</URLFOTOPRODUTO>
                     <ESTOQUE>SC</ESTOQUE>
                     <NCM>85183000</NCM>
                     <LARGURA>0.1000</LARGURA>
                     <ALTURA>0.1000</ALTURA>
                     <PROFUNDIDADE>0.1000</PROFUNDIDADE>
                     <ATIVO>1</ATIVO>
                     <SUBSTTRIBUTARIA>0</SUBSTTRIBUTARIA>
                     <ORIGEMPRODUTO>1 - ESTRANGEIRA - IMPORTACAO DIRETA</ORIGEMPRODUTO>
                  </Produtos>
               </NewDataSet>
            </diffgr:diffgram>
         </RetornarListaProdutosResult>
      </RetornarListaProdutosResponse>
   </soap:Body>
</soap:Envelope> 

e o erro que esta dando

 

Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\all\xml.php on line 6

 

grato!!

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.