Estou criando um projeto para emitir nota fiscal eletronica em php, comecei a fazer o script, já li toda a documentação, mas necessito de muita ajuda para que tudo fique bem legal em pouco tempo. Não é difícil.
Segue o script para gerar o famigerado arquivo xml que será enviado para a receita federal, o banco de dados é em mysql, no futuro pretendo interligar o php com meu sistema em clipper que está nas lojas. Agradeço qualquer colaboraçao de vocês para que o projeto seja implementado.
<?php/*Script desenvolvido por Celio Alexandre Galli[url="http://www.planetariobranco.com.br"]http://www.planetariobranco.com.br[/url]rbslinux@ig.com.brEntre em contato para alguma sugestão de melhoramento...*/*/ Faz a conexão ao bando de dados -> crie um banco de dados qualquer com as variaveis que serao usadasinclude "conecta.php";*/Abre um arquivo chamado xml_gerado.xml (aconselhavel criar o arquivo manualmente e mudar atributos para gravar e ler 777 recomendado...$vai_xml = fopen("xlm_gerado.xml","w+");/*Começamos a gravar os dados no arquivo xlm....fwrite($vai_xml,"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");$cab1='<cabecMsg xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.02">';fwrite($vai_xml,$cab1);fwrite($vai_xml," \n");$cab2=' <versaoDados>1.07</versaoDados>';fwrite($vai_xml,$cab2);fwrite($vai_xml," \n");$cab3='</cabecMsg>';fwrite($vai_xml,$cab3);fwrite($vai_xml," \n");$sql = mysql_query("SELECT * FROM dados ORDER BY id ASC");/*Looping para pegar os dados no banco de dados*/while($exibir = mysql_fetch_array($sql)){ $nome = $exibir['nome']; $email = $exibir['email']; $data = $exibir['data']; $data = date("d-m-Y", strtotime("$data")); $conteudo = "\n<dados>\n"; $conteudo .= "<nome>$nome</nome>\n"; $conteudo .= "<email>$email</email>\n"; $conteudo .= "<data>$data</data>\n"; $conteudo .= "</dados>"; fwrite($vai_xml,$conteudo);}/*Fecho da estrutura do xml*/fwrite($vai_xml,"\n</meusite>");/*Fecha o arquivo aberto (não é necessário, mas é bom*/fclose($vai_xml);/*Fecha a conexão com o banco de dados*/mysql_close($conecta);?>
O script já está tomando corpo de acordo com um modelo de nota fiscal, se alguém quiser continuar, poderá colaborar para o desenvolvimento deste projeto.
<?php/*Script desenvolvido por Celio Alexandre Galli[url="http://www.planetariobranco.com.br"]http://www.planetariobranco.com.br[/url]rbslinux@ig.com.brEntre em contato para alguma sugestão de melhoramento...*//*Faz a conexão ao bando de dados -> crie um banco de dados qualquer com as variaveis que serao usadas*/include "conecta.php";/*Abre um arquivo chamado xml_gerado.xml (aconselhavel criar o arquivo manualmente e mudar atributos para gravar e ler 777 recomendado...*/$vai_xml = fopen("xlm_gerado.xml","w+");/*Começamos a gravar os dados no arquivo xlm....*/fwrite($vai_xml,"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");$cab1='<cabecMsg xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.10">';fwrite($vai_xml,$cab1);fwrite($vai_xml," \n");$cab2=' <versaoDados>1.07</versaoDados>';fwrite($vai_xml,$cab2);fwrite($vai_xml," \n");$cab3='</cabecMsg>';fwrite($vai_xml,$cab3);fwrite($vai_xml," \n");/* Dados da Empresa origem (Fazer uma tabela)*/$origx='-<ide>';fwrite($vai_xml,$origx);fwrite($vai_xml," \n");$orig1=' <cUF>35</cUF>';fwrite($vai_xml,$orig1);fwrite($vai_xml," \n");$orig2=' <cNF>518005127</cNF>';fwrite($vai_xml,$orig2);fwrite($vai_xml," \n");$orig3=' <natOp>Venda a vista</natOp>';fwrite($vai_xml,$orig3);fwrite($vai_xml," \n");$orig4=' <indPag>0</indPag>';fwrite($vai_xml,$orig4);fwrite($vai_xml," \n");$orig5=' <mod>55</mod>';fwrite($vai_xml,$orig5);fwrite($vai_xml," \n");$orig6=' <serie>1</serie>';fwrite($vai_xml,$orig6);fwrite($vai_xml," \n");$orig7=' <nNF>1</nNF>';fwrite($vai_xml,$orig7);fwrite($vai_xml," \n");$orig8=' <dEmi>2008-05-06</dEmi>';fwrite($vai_xml,$orig8);fwrite($vai_xml," \n");$orig9=' <dSaiEnt>2008-05-06</dSaiEnt>';fwrite($vai_xml,$orig9);fwrite($vai_xml," \n");$orig10=' <tpNF>0</tpNF>';fwrite($vai_xml,$orig10);fwrite($vai_xml," \n");$orig11=' <cMunFG>3550308</cMunFG>';fwrite($vai_xml,$orig11);fwrite($vai_xml," \n");$orig12=' <tpImp>1</tpImp>';fwrite($vai_xml,$orig12);fwrite($vai_xml," \n");$orig13=' <tpEmis>1</tpEmis>';fwrite($vai_xml,$orig13);fwrite($vai_xml," \n");$orig14=' <cDV>3</cDV>';fwrite($vai_xml,$orig14);fwrite($vai_xml," \n");$orig15=' <tpAmb>2</tpAmb>';fwrite($vai_xml,$orig15);fwrite($vai_xml," \n");$orig16=' <finNFe>1</finNFe>';fwrite($vai_xml,$orig16);fwrite($vai_xml," \n");$orig17=' <procEmi>0</procEmi>';fwrite($vai_xml,$orig17);fwrite($vai_xml," \n");$orig18=' <verProc>NF-eletronica.com</verProc>';fwrite($vai_xml,$orig18);fwrite($vai_xml," \n");$orig19='</ide>';fwrite($vai_xml,$orig19);fwrite($vai_xml," \n");/* Emitente */$emitx='<emit>';fwrite($vai_xml,$emitx);fwrite($vai_xml," \n");$emit1=' <CNPJ>99999090910270</CNPJ>';fwrite($vai_xml,$emit1);fwrite($vai_xml," \n");$emit2=' <xNome>NF-e Associacao NF-e</xNome>';fwrite($vai_xml,$emit2);fwrite($vai_xml," \n");$emit3=' <xFant>NF-e</xFant>';fwrite($vai_xml,$emit3);fwrite($vai_xml," \n");$emit3=' <xFant>NF-e</xFant>';fwrite($vai_xml,$emit3);fwrite($vai_xml," \n");$emit4=' <enderemit>';fwrite($vai_xml,$emit4);fwrite($vai_xml," \n");$emit5=' <xLgr>Rua Central</xLgr>';fwrite($vai_xml,$emit5);fwrite($vai_xml," \n");$emit6=' <nro>100</nro>';fwrite($vai_xml,$emit6);fwrite($vai_xml," \n");$emit7=' <xCpl>Fundos</xCpl>';fwrite($vai_xml,$emit7);fwrite($vai_xml," \n");$emit8=' <xBairro>Distrito Industrial</xBairro>';fwrite($vai_xml,$emit8);fwrite($vai_xml," \n");$emit9=' <cMun>3502200</cMun>';fwrite($vai_xml,$emit9);fwrite($vai_xml," \n");$emit10=' <xMun>Angatuba</xMun>';fwrite($vai_xml,$emit10);fwrite($vai_xml," \n");$emit11=' <UF>SP</UF>';fwrite($vai_xml,$emit11);fwrite($vai_xml," \n");$emit12=' <CEP>17100171</CEP>';fwrite($vai_xml,$emit12);fwrite($vai_xml," \n");$emit13=' <cPais>1058</cPais>';fwrite($vai_xml,$emit13);fwrite($vai_xml," \n");$emit14=' <xPais>Brasil</xPais>';fwrite($vai_xml,$emit14);fwrite($vai_xml," \n");$emit15=' <fone>1733021717</fone>';fwrite($vai_xml,$emit15);fwrite($vai_xml," \n");$emit16=' </enderEmit>';fwrite($vai_xml,$emit16);fwrite($vai_xml," \n");$emitx1='</emit>';fwrite($vai_xml,$emitx1);fwrite($vai_xml," \n");/*Fecho da estrutura do xml*/fwrite($vai_xml,"\n</meusite>");/*Fecha o arquivo aberto (não é necessário, mas é bom*/fclose($vai_xml);/*Fecha a conexão com o banco de dados*/mysql_close($conecta);?>
Attached Files
Edição feita por: Dudu, 25/02/2009, 15:04.