Jump to content
emmanuelsiqueira30

Inserir registros de todas as linhas do arquivo txt no banco de dados mysql

Recommended Posts

Bom dia pessoal, estou com um problema que é o seguinte tenho 3 arquivos php, 1 para receber os dados via post o insbl.php pelo arquivo cadbl.php e o exportabl.php que serve para enviar os arquivos do arquivo txt para o banco de dados, porém ao executar o arquivo expórtarbl.php somente é salvo no banco de dados a primeira linha e não são salvas as outras linhas dentro do arquivo txt, se alguém puder me ajudar desde já fico muito agradecido.

 

insbl.php

<?php

	session_start();
	
	   	$cod_mun_bl = $_POST['cod_mun_bl'];
		$uso_proc_data_alt = date('Y-m-d');
		$bairro_id_bl = $_POST['bairro_id_bl'];
		$distrito_bl = $_POST['distrito_bl'];
		$setor_bl = $_POST['setor_bl'];
		$secao_bl = $_POST['secao_bl'];
		$cep_bl = $_POST['cep_bl'];
		$cod_logra_bl = $_POST['cod_logra_bl'];
		$logra_bl = $_POST['logra_bl'];
		$num_de_bl = $_POST['num_de_bl'];
		$num_ate_bl = $_POST['num_ate_bl'];
		$data_bl = $_POST['data_bl'];
		$valor_bl = $_POST['valor_bl'];
		$coleta_lixo_bl = $_POST['coleta_lixo_bl'];
		$limp_pub_bl = $_POST['limp_pub_bl'];
		$ilum_pub_bl = $_POST['ilum_pub_bl'];
		$ener_eletr_bl = $_POST['ener_eletr_bl'];
		$rede_tel_bl = $_POST['rede_tel_bl'];
		$rede_agua_pot_bl = $_POST['rede_agua_pot_bl'];
		$rua_pav_bl = $_POST['rua_pav_bl'];
		$rede_esg_bl = $_POST['rede_esg_bl'];
		$rede_agua_pluv_bl = $_POST['rede_agua_pluv_bl'];
		$rua_placa_bl = $_POST['rua_placa_bl'];
		$quant_esquina_bl = $_POST['quant_esquina_bl'];
		$n_lei_bl = $_POST['n_lei_bl'];
		$data_cad_bl =  date('Y-m-d');
		$ass_bl = $_SESSION['usuario'];
		$obs_bl = $_POST['obs_bl'];
						
		//PREPARA O CONTEÚDO A SER GRAVADO
		$conteudo =	"
$cod_mun_bl,$uso_proc_data_alt,$bairro_id_bl,$distrito_bl,$setor_bl,$secao_bl,$cep_bl,$cod_logra_bl,$logra_bl,$num_de_bl,$num_ate_bl,$data_bl,$valor_bl,$coleta_lixo_bl,$limp_pub_bl,$ilum_pub_bl,$ener_eletr_bl,$rede_tel_bl,$rede_agua_pot_bl,$rua_pav_bl,$rede_esg_bl,$rede_agua_pluv_bl,$rua_placa_bl,$quant_esquina_bl,$n_lei_bl,$data_cad_bl,$ass_bl,$obs_bl\r \n";

		//ARQUIVO TXT
		$arquivo = "regbl.txt";

		//TENTA ABRIR O ARQUIVO TXT
		if (!$abrir = fopen($arquivo, "a+",0)) {
				echo  "Erro abrindo arquivo local ($arquivo)";
				exit;
		   }

		//ESCREVE NO ARQUIVO TXT
		if (!fwrite($abrir, $conteudo, strlen($conteudo))) {
			echo "<script>alert('Erro ao cadastrar - ($arquivo)'); location='cadbl.php';</script>";
			exit;
		   }
		else {
			echo "<script>alert('Cadastro realizado com sucesso.'); location='cadbl.php';</script>";
		}

		//FECHA O ARQUIVO 
		fclose($abrir);
?>

 

cadbl.php

<!DOCTYPE html>
<html>
<head>

<?php
include("sessao.php");
?>

	<title>Boletim de Logradouros - BL</title>
	
 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
</head>
<body>

<?php
   include("menu.php");
?>

	<div class="container-fluid">
		
		<div class="form-row">
			
			<div class="panel panel-default form-group col-xs-12">
				<form action="insbl.php" method="post" enctype="multipart/form-data">

					<p><h2>Boletim de Logradouros - BL</h2></p>
			    
			     	<br/>
					
					<fieldset>
						<legend>PARA USO DO PROCESSAMENTO</legend>
							<div class="form-group form-inline">
								<label for="cod_mun_bl">Código do munícipio: </label>
								<input type="text" class="form-control " name="cod_mun_bl" placeholder="Código do munícipio" required>
								
							</div>
					</fieldset>
					
					<fieldset>
						<legend>INFORMAÇÕES GERAIS</legend>		      	  
							<div class="form-group">
								
								<input type="text" class="form-control" name="textbox" id="textbox" placeholder="Digite o bairro">					
								<label for="bairro_id_bl">Bairro: </label>
								<select class="form-control" name="bairro_id_bl" id="select">
									<?php
										include ("conexao.php");
										$query = "SELECT * FROM bairros";
										$consulta = mysqli_query($con,$query); 

										while ($dados = mysqli_fetch_assoc($consulta)) { ?>
											<option value="<?php echo $dados['id_bairros']; ?>"><?php echo $dados['nome_bairros']; ?></option> <?php 
										}
									?>
								</select>
								
								<div class="form-inline">
									<label for="distrito_bl">Distrito: </label>
									<input type="text" class="form-control" name="distrito_bl" placeholder="Distrito" required>
									
									<label for="setor_bl">Setor: </label>
									<input type="text" class="form-control" name="setor_bl" placeholder="Setor" required>
									
									<label for="secao_bl">Seção: </label>
									<input type="text" class="form-control" name="secao_bl" placeholder="Seção" required>
									
									<label for="cep_bl">CEP: </label>
									<input type="text" class="form-control" name="cep_bl" placeholder="Código de logradouro" required>
									
									<label for="cod_logra_bl">Código de logradouro: </label>
									<input type="text" class="form-control" name="cod_logra_bl" placeholder="Código de logradouro" required>
									
									<label for="logra_bl">Logradouro: </label>
									<input type="text" class="form-control" name="logra_bl" placeholder="Logradouro" required>
									
									<div class="form-inline">
										de <input type="text" class="form-control" name="num_de_bl" required> até <input type="text" class="form-control" name="num_ate_bl" required>
									</div>
									
								</div>
							</div>
					</fieldset>
						  
					<div class="form-group form-inline">
						<label for="data_bl">Data: </label>
						<input type="date" class="form-control" name="data_bl" placeholder="Data" required>
								
						<label for="valor_bl">Valor: </label>
						<input type="text" class="form-control" name="valor_bl" placeholder="Setor anterior" required>
								
						<label for="coleta_lixo_bl">Coleta de lixo</label>
						<select class="form-control" name="coleta_lixo_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="limp_pub_bl">Limpeza pública</label>
						<select class="form-control" name="limp_pub_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="ilum_pub_bl">Iluminação pública</label>
						<select class="form-control" name="ilum_pub_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="ener_eletr_bl">Energia Elétrica</label>
						<select class="form-control" name="ener_eletr_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="rede_tel_bl">Rede de telefone</label>
						<select class="form-control" name="rede_tel_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="rede_agua_pot_bl">Rede de água potável</label>
						<select class="form-control" name="rede_agua_pot_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="rua_pav_bl">Rua pavimentada</label>
						<select class="form-control" name="rua_pav_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="rede_esg_bl">Rede de esgoto</label>
						<select class="form-control" name="rede_esg_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="rede_agua_pluv_bl">Rede de esgoto</label>
						<select class="form-control" name="rede_agua_pluv_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="rua_placa_bl">Rua com placa</label>
						<select class="form-control" name="rua_placa_bl">
							<option value=" "> </option>
							<option value="Sim">Sim</option>
							<option value="Não">Não</option>
						</select>
						
						<label for="quant_esquina_bl">Quantidade de esquinas: </label>
						<input type="text" class="form-control" name="quant_esquina_bl" placeholder="Quantidade de esquinas" required>
						
						<label for="n_lei_bl">Número da Lei/Denominação: </label>
						<input type="text" class="form-control" name="n_lei_bl" placeholder="Número da Lei/Denominação" required>
						
					</div>
								
						<label for="obs_bl">Observações: </label>
						<input type="areatext" class="form-control" name="obs_bl">
					</div>
					<button type="submit" name="cadastrar" id="cadastrar" class="btn btn-primary">Cadastrar</button>
	  					
				
			</form>
			</div>
		</div>
		
	</div>

<script>
jQuery.fn.filterByText = function(textbox, selectSingleMatch) {
        return this.each(function() {
            var select = this;
            var options = [];
            $(select).find('option').each(function() {
                options.push({value: $(this).val(), text: $(this).text()});
            });
            $(select).data('options', options);
            $(textbox).bind('change keyup', function() {
                var options = $(select).empty().data('options');
                var search = $(this).val().trim();
                var regex = new RegExp(search,"gi");
              
                $.each(options, function(i) {
                    var option = options[i];
                    if(option.text.match(regex) !== null) {
                        $(select).append(
                           $('<option>').text(option.text).val(option.value)
                        );
                    }
                });
                if (selectSingleMatch === true && $(select).children().length === 1) {
                    $(select).children().get(0).selected = true;
                }
            });            
        });
    };

    $(function() {
        $('#select').filterByText($('#textbox'), false);
      $("select option").click(function(){
        alert(1);
      });
    });
</script>

</body>
</html>

 

exportabl.php

<?php

	include("conexao.php");
	
	$arquivo = fopen("regbl.txt","r");

		//Remove quebra de linha que vem no fgets
$linhas = fgets($arquivo);

//Divide em um array
$colunas = explode(',', $linhas);

//Passa os valores como 
foreach ($colunas as &$coluna) {
     //Escapa o valor de cada coluna, como é referencia vai aplicar diretamente a array
     $coluna = mysqli_real_escape_string($con, $coluna);
	 
	 //Junta os valores da array de volta em um string e aplica as aspas simples
$linhas = '\'' . implode('\', \'', $colunas) . '\'';

$sql = "INSERT INTO bl (cod_mun_bl,uso_proc_data_alt,bairro_id_bl,distrito_bl,setor_bl,secao_bl,cep_bl,cod_logra_bl,logra_bl,num_de_bl,num_ate_bl,data_bl,valor_bl,coleta_lixo_bl,
limp_pub_bl,ilum_pub_bl,ener_eletr_bl,rede_tel_bl,rede_agua_pot_bl,rua_pav_bl,rede_esg_bl,rede_agua_pluv_bl,rua_placa_bl,quant_esquina_bl,n_lei_bl,data_cad_bl,ass_bl,obs_bl) 
VALUES ($linhas)";

}

$result = mysqli_query($con, $sql);

			
			if ($result) {
					echo "<script>alert('Cadastro realizado com sucesso.'); location='./cadbl.php';</script>";
				} else {
					echo "<script>alert('Erro ao cadastrar.'); </script>";
				}
				
				$erro = mysqli_error($con);
				echo $erro;
				
				echo $sql;
			
			$con->close();	
?>

 

Share this post


Link to post
Share on other sites

Olá!
Por quê precisa gravar no .txt primeiro?
Por quê não usa o mesmo arquivo que gera o .txt a partir dos dados postados, para também efetuar a inserção no banco de dados?

Share this post


Link to post
Share on other sites
Em 04/08/2018 at 11:26, tetsuo disse:

Olá!
Por quê precisa gravar no .txt primeiro?
Por quê não usa o mesmo arquivo que gera o .txt a partir dos dados postados, para também efetuar a inserção no banco de dados?

 

Porque o cenário é o seguinte, nos locais onde vão ser efetuados os cadastros não possuem internet nem chega sinal de celular ai quero gravar em um arquivo txt para depois voltar a base conectar a internet e enviar os dados do txt para o banco de dados online.

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 infonet
      Poderiam me ajudar com esta consulta SQL?   Acontece que ela roda normal, mas quando coloco na paginação ela não funciona:   mysqli_query ($conn, "SET @a := 0"); $_pagi_sql = "SELECT *, LPAD( @a := @a + 1, 5, '0' ) 'sequencial' FROM tb_his WHERE idclih = $idclientHis ORDER BY dt_his DESC, idhis DESC, sequencial DESC";   O erro acontece somente por causa do final: sequencial DESC, pois quando eu retiro, funciona normalmente.   Obrigado!
    • By Eurales antony
      Boa noite developers, eu codei um sistema em PHP mas não para ser vendido e sim alugado, o cliente aluga eu envio os arquivos do sistema e uma chave e apenas com uma chave valida o sistema funciona, o sistema está pronto terminei de coda o ofuscador e um contaminador(insere códigos deanecesaarios no código) mas agora eu preciso criptografar todos os arquivos, tipo base_64 ou melhor, com o ofuscador e contaminador o código fonte está totalmente ilegível mas quero que fique igual a um código que eu vi, um monte de caracteres nada vê com nada não sei se era base 64 na verdade não entendo muito sobre criptografia quem puder me ajudar eu agradeço e quem chegou até aqui agrade pelo atenção, boa noite 
    • By eduardaarosaa
      Olá!!! Gostaria de saber como converter um objeto em array.
      Já tentei usar get_objet_vars e não funcionou ... veio um array vazio 
      Exemplo: array(){
      }
      array(){
      }
      Meu objeto está assim: 
      object(Illuminate\Http\UploadedFile)#205 (7) {
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        bool(false)
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(10) "eliete.jpg"
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(10) "image/jpeg"
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        int(0)
        ["hashName":protected]=>
        NULL
        ["pathName":"SplFileInfo":private]=>
        string(24) "C:\xampp\tmp\php8467.tmp"
        ["fileName":"SplFileInfo":private]=>
        string(11) "php8467.tmp"
      }
      object(Illuminate\Http\UploadedFile)#211 (7) {
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        bool(false)
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(40) "f114abec-1fe1-4e86-92b0-5b976b4c50c0.jpg"
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(10) "image/jpeg"
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        int(0)
        ["hashName":protected]=>
        NULL
        ["pathName":"SplFileInfo":private]=>
        string(24) "C:\xampp\tmp\php8468.tmp"
        ["fileName":"SplFileInfo":private]=>
        string(11) "php8468.tmp"
      }
      object(Illuminate\Http\UploadedFile)#212 (7) {
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        bool(false)
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(27) "bitcoin-3125488_960_720.png"
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(9) "image/png"
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        int(0)
        ["hashName":protected]=>
        NULL
        ["pathName":"SplFileInfo":private]=>
        string(24) "C:\xampp\tmp\php8469.tmp"
        ["fileName":"SplFileInfo":private]=>
        string(11) "php8469.tmp"
      }
      object(Illuminate\Http\UploadedFile)#213 (7) {
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        bool(false)
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(14) "imagem0033.jpg"
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(10) "image/jpeg"
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        int(0)
        ["hashName":protected]=>
        NULL
        ["pathName":"SplFileInfo":private]=>
        string(24) "C:\xampp\tmp\php8479.tmp"
        ["fileName":"SplFileInfo":private]=>
        string(11) "php8479.tmp"
      }
       
      Obrigada!!!
    • By eduardaarosaa
      Olá!!! Gostaria de saber como converter um objeto em array.
      Já tentei usar get_objet_vars e não funcionou ... veio um array vazio 
      Exemplo: array(){
      }
      array(){
      }
      Meu objeto está assim: 
      object(Illuminate\Http\UploadedFile)#205 (7) {
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        bool(false)
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(10) "eliete.jpg"
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(10) "image/jpeg"
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        int(0)
        ["hashName":protected]=>
        NULL
        ["pathName":"SplFileInfo":private]=>
        string(24) "C:\xampp\tmp\php8467.tmp"
        ["fileName":"SplFileInfo":private]=>
        string(11) "php8467.tmp"
      }
      object(Illuminate\Http\UploadedFile)#211 (7) {
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        bool(false)
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(40) "f114abec-1fe1-4e86-92b0-5b976b4c50c0.jpg"
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(10) "image/jpeg"
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        int(0)
        ["hashName":protected]=>
        NULL
        ["pathName":"SplFileInfo":private]=>
        string(24) "C:\xampp\tmp\php8468.tmp"
        ["fileName":"SplFileInfo":private]=>
        string(11) "php8468.tmp"
      }
      object(Illuminate\Http\UploadedFile)#212 (7) {
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        bool(false)
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(27) "bitcoin-3125488_960_720.png"
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(9) "image/png"
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        int(0)
        ["hashName":protected]=>
        NULL
        ["pathName":"SplFileInfo":private]=>
        string(24) "C:\xampp\tmp\php8469.tmp"
        ["fileName":"SplFileInfo":private]=>
        string(11) "php8469.tmp"
      }
      object(Illuminate\Http\UploadedFile)#213 (7) {
        ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        bool(false)
        ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(14) "imagem0033.jpg"
        ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        string(10) "image/jpeg"
        ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=>
        int(0)
        ["hashName":protected]=>
        NULL
        ["pathName":"SplFileInfo":private]=>
        string(24) "C:\xampp\tmp\php8479.tmp"
        ["fileName":"SplFileInfo":private]=>
        string(11) "php8479.tmp"
      }
       
      Obrigada!!!
    • By RewelB
      Olá, gostaria de saber como faço pra que quando o usuário digite algo em um campo de texto a imagem fique girando. Eu tenho a imagem de uma engrenagem e queria que ela fizesse uma animaçãozinha no estilo da que tem nesse site: http://www.empsis.com.br/. Sou iniciante e peço desculpas se isso for muito simples de fazer. Estou usando PHP, HTML e CSS.
×

Important Information

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