Ir para conteúdo

POWERED BY:

Arquivado

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

tony_lu

[Resolvido] Importação de XML

Recommended Posts

Ola pessoal...td bem?

 

Estou com um grande problema na empresa ... e preciso resolver o mais breve possivel...se alguem puder me ajudar agradeço muito...

 

Assim... eu criei um sistema onde eu faço o upload de um arquivo xml já com uma etrutura definida...e gravo as informações no banco de dados.

 

O problema é o seguinte... quando eu faço a importação esta perfeito ... as informações são importadas para o banco de dados ... o problema é quando nessas informações existem acentos, virgulas, dois pontos ... quando tem algum desses caracteres dá um erro... vou passar abaixo a codificação...se alguem tiver uma experiencia e puder me ajudar:

 

A estrutura do XML abaixo:

 

arquivo.xml

 

<?xml version="1.0" ?>
<reg>
<Item>
	<Cod_Estab>001</Cod_Estab>
	<It_Codigo>10003</It_Codigo>
	<Desc_item>FIO ESMALTADO</Desc_item>
	<UN>KG</UN>
	<Peso_Bruto>0</Peso_Bruto>
	<Cod_Obsoleto>1</Cod_Obsoleto>
</Item>
</reg>

 

 

importa.php

<?

#carrega o arquivo XML e retornando um Array
$xml = simplexml_load_file("http://localhost/grupobrasil/xml/$nome_arquivo");

#para cada nó Usuario  atribui à variavel $usuario(obj simplexml)
foreach($xml->Item as $usuario)
{ 
	$campo1 = "$usuario->Cod_Estab";
	$campo2 = "$usuario->It_Codigo";
	$campo3 = "$usuario->Desc_item";
	$campo4 = "$usuario->UN";
	$campo5 = "$usuario->Peso_Bruto";
	$campo6 = "$usuario->Cod_Obsoleto";	
	$valor = '\''.$campo1.'\',\''.$campo2.'\',\''.$campo3.'\',\''.$campo4.'\',\''.$campo5.'\',\''.$campo6.'\'';
	$inserir = mysql_query("INSERT INTO itens ($registro) VALUES ($valor)") OR die (mysql_error());//Selecionando todas as subcategorias

}
}
?>

O erro que ocorre....é a seguinte:

 

Warning: simplexml_load_file() [function.simplexml-load-file]: http://localhost/grupobrasil/xml/XML001.xml:7: parser error : Input is not proper UTF-8, indicate encoding ! Bytes: 0xC7 0xE3 0x0D 0x0A in D:\VertrigoServ\www\grupobrasil\importacao\Itens.php on line 41

 

Warning: simplexml_load_file() [function.simplexml-load-file]: <Desc_item>�� in D:\VertrigoServ\www\grupobrasil\importacao\Itens.php on line 41

 

Warning: simplexml_load_file() [function.simplexml-load-file]: ^ in D:\VertrigoServ\www\grupobrasil\importacao\Itens.php on line 41

 

Warning: Invalid argument supplied for foreach() in D:\VertrigoServ\www\grupobrasil\importacao\Itens.php on line 43

 

Onde esta em negrito é a linha que eu adicionei pontos, acentos..etc...e nessa linha que dá erro...

Bom pessoal...se alguem puder me ajudar ficarei muito grato...estou a dias tentando mais nao consegui

Abraços a todos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá..

 

tente com o encoding,veja se resolve

 

<?xml version="1.0" encoding="iso-8859-1"?>

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá..

 

tente com o encoding,veja se resolve

 

<?xml version="1.0" encoding="iso-8859-1"?>

t+

é isso mesmo cara....agradeço pela ajuda

 

Abs

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.