Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
bom dia.
hoje eu tenho um sistema que faz o upload do xml da nfe e grava todos os campos no bd. O problema e que eu recebo em media 400 nfe's por dia, o que torna o processo muito trabalhoso.
Pesquisando e lendo na internet vi a solução de upload de arquivo .zip ou .rar
minha duvida e, como eu efetuar o upload de por exemplo 200 nfe e o sistema ja ir gravando tudo no banco.
segue abaixo arquivo que uso para gravar dados do xml no banco, isso fazendo upload de apenas uma nota.
<?php
include"../includes/conecta.php";
$diretorio = "nfe/";
$upload = $diretorio.$_FILES['nnnfe']['name'];
$nnnfe = $_FILES['nnnfe']['name'];// variavel foto
if(move_uploaded_file($_FILES['nnnfe']['tmp_name'], $upload))
{
$sql_nfe = mysql_query("insert into nnfe (nfe) VALUES ('$nnnfe')", $db);
$idimp = mysql_insert_id();
$sql_puxa_nfe = mysql_query("select * from nnfe where id = '$idimp'", $db);
$vetor = mysql_fetch_array($sql_puxa_nfe);
$numeronota = $vetor[nfe];
try
{
$object = simplexml_load_file( 'nfe/' . $numeronota );
foreach($object->NFe as $key => $item)
{
if(isset($item->infNFe))
{
$dataent = $item->infNFe->ide->dSaiEnt;
$numeronfe = $item->infNFe->ide->nNF;
$cliente = $item->infNFe->dest->xNome;
$nomeproduto = $item->infNFe->det->prod->xProd;
$qtd = $item->infNFe->det->prod->qCom;
$valorun = $item->infNFe->det->prod->vUnCom;
$valor = $item->infNFe->det->prod->vProd;
$comp = $item->infNFe->infAdic->infCpl;
$data = date("Y-m-d");
$hora = date("H:i:s");
$alterado = 'Envio de NFe N°:'.$numeronfe;
$sql_busca = "select nfe FROM nfe WHERE nfe ='$numeronfe'";
$exe_busca = mysql_query($sql_busca) or die (mysql_error());
$num_busca = mysql_num_rows($exe_busca);
if ($num_busca > 0) {
echo "Essa NF-e já esta cadastrado.";
echo"<meta http-equiv=refresh content=3;url='pagina.php?i=uploadnfe.php'>";
}
else {
$sql = mysql_query("insert into nfe (nxml, data, nfe, cliente, nomeproduto, qtd, valorun, valor, comp) VALUES ('$nnnfe', '$dataent', '$numeronfe', '$cliente', '$nomeproduto', '$qtd', '$valorun', '$valor', '$comp')", $db);
$sql_log = mysql_query("insert into logs (usuario, data, hora, alterado) VALUES ('$usuario', '$data', '$hora', '$alterado')", $db);
echo "NF-e Cadastrado com Sucesso";
}
}
}
echo '</table>';
}
catch(Exception $e)
{
echo $e->getMessage();
}
}
?>
so queria poder gravar os dados de varias notas ao mesmo tempo e pensei no zip, agora a duvida e como fazer o upload e ir gravando.
att.
Carregando comentários...