Ir para conteúdo
Fórum Script Brasil
  • 0

txt para MySQL enviar linha apenas se começar com...


rodrigo_php

Pergunta

Olá, ficaria muito grato se alguém pudesse me ajudar.

Possuo arquivos txt nesse padrão;

000000278125000000000000000 000008AB361730593BB000000

000000227125000000000000000 000008AB361730593BB000000

000000129125000000000000000 000008AB361730593BB000000

000000272125000000000000000 000008AB361730593BB000000

000000120125000000000000000 000008AB361730593BB000000

Uso esse codigo para enviar os dados que preciso para o banco de dados MySQL;

$i = 0;

while (!feof($lendo)){

$i++;

$linha = fgets($lendo,9999);

$numero = trim(substr($linha,7,5)). "000";

$registro = trim(substr($linha,44,13));

//$linha = explode("|", $linha);

if(strlen($linha) > '1'){

$insere = "INSERT INTO enumero (numero, registro) VALUES ('$numero', '$registro')";

mysql_query($insere) or die('ERRO NA CONSULTA. <br><br> CONSULTA ENVIADA = '.$insere.'<br><br>ERRO DO MYSQL = '.mysql_error());

}

}

echo "&lt;script>alert('Retorno Importado com Sucesso!');top.location.href='index.php';</script>";

fclose($lendo);

Teria alguma maneira “milagrosa” de só acrescentar os dados no banco se o caractere 7 começar com 2 ?

Desde já, obrigado!

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Teria alguma maneira “milagrosa” de só acrescentar os dados no banco se o caractere 7 começar com 2 ?

Risos, forma milagrosa não, mas essa função pode lhe ajudar.

substring(arquivoTXT,7,1) = 2

-- se a posição 7 de tamanho 1 for igual a 2 irá retorna um valor positivo 1 (um), caso contratio ira retorna 0(zero)

Boa sorte!

Olá, ficaria muito grato se alguém pudesse me ajudar.

Possuo arquivos txt nesse padrão;

000000278125000000000000000 000008AB361730593BB000000

000000227125000000000000000 000008AB361730593BB000000

000000129125000000000000000 000008AB361730593BB000000

000000272125000000000000000 000008AB361730593BB000000

000000120125000000000000000 000008AB361730593BB000000

Uso esse codigo para enviar os dados que preciso para o banco de dados MySQL;

$i = 0;

while (!feof($lendo)){

$i++;

$linha = fgets($lendo,9999);

$numero = trim(substr($linha,7,5)). "000";

$registro = trim(substr($linha,44,13));

//$linha = explode("|", $linha);

if(strlen($linha) > '1'){

$insere = "INSERT INTO enumero (numero, registro) VALUES ('$numero', '$registro')";

mysql_query($insere) or die('ERRO NA CONSULTA. <br><br> CONSULTA ENVIADA = '.$insere.'<br><br>ERRO DO MYSQL = '.mysql_error());

}

}

echo "&lt;script>alert('Retorno Importado com Sucesso!');top.location.href='index.php';</script>";

fclose($lendo);

Teria alguma maneira “milagrosa” de só acrescentar os dados no banco se o caractere 7 começar com 2 ?

Desde já, obrigado!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...