Vou tentar explicar essa minha grande dúvida da maneira mais clara possível, vamos lá:
Tenho um sistema que recebe um UPLOAD de um arquivo .CSV e insere corretamente no banco de dados todas as colunas e linhas necessárias, até que um cliente chegou a mim me questionando sobre as pastas que eram duplicadas toda vez que ele fazia um novo UPLOAD("e;Pastas duplicadas seriam digamos 2 ou mais vezes o mesmo CNPJ e CPF inseridos), então oque propus a ele foi:
Sempre que houver um novo upload ele confere se o CPF/CNPJ já está inserido no banco de dados.
1º -) Se o CPF/CNPJ não estiver inserido no banco de dados ele vai e criar o INSERT de registros normalmente.
2º-) Se o CPF/CNPJ já estiver inserido, ele cria um UPDATE nos registros, e faz o UPDATE dos arquivos com esse novo UPLOAD.
Espero que entendam essa minha duvida.
<?php
include "../_conexao/conexao.php";
//Transferir o arquivo if (isset($_POST['submit'])) { //Importar o arquivo transferido para o banco de dados $sql = mysqli_query($conexao,"SELECT cpf_cnpj FROM semaforo");
if ($data[0] != 'situacao_primaria' && !empty($handle)) { $import="INSERT into semaforo(id,situacao_primaria,status,data_indicacao,tipo_de_indicacao,tipo_de_distribuicao,categoria,codigo_penumper,nome_do_cliente,cpf_cnpj,negociadores,tipo_pessoa_cliente,uf,cep,municipio_do_cliente,advogado_gestor_interno,numero_operacao,sistema_origem,numero_operacao_origem,familia_do_produto,codigo_produto,nome_do_produto,codigo_agencia,nome_agencia,descricao_segmento,segmento_secundario,descricao_segmento_secundario,situacao_secundaria,data_recebimento,data_credito_liquidacao,valor_da_operacao,valor_transferido_para_creli,valor_da_divida,valor_saldo_contabil,qdt_dias_atraso,nome_da_garantia,ajuizado,codigo_do_ajuizamento,valor_ajuizado,tipo_de_acao,motivo_da_acao,avalista_nome,avalista_cpf_cnpj,avalista_tipo_pessoa,saldo_cm1,recup_judicial_falencia,escob_adm,data_inclusao_escob)values(null,'$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]','$data[12]','$data[13]','$data[14]','$data[15]','$data[16]','$data[17]','$data[18]','$data[19]','$data[20]','$data[21]','$data[22]','$data[23]','$data[24]','$data[25]','$data[26]','$data[27]','$data[28]','$data[29]','$data[30]','$data[31]','$data[32]','$data[33]','$data[34]','$data[35]','$data[36]','$data[37]','$data[38]','$data[39]','$data[40]','$data[41]','$data[42]','$data[43]','$data[44]','$data[45]','$data[46]')"; mysqli_query($conexao, $import) or die(mysqli_error($conexao)); } }
fclose($handle);
print "<center>Transferir <b>SEMÁFORO</b> por arquivo CSV selecione o arquivo clicando no botão <b>escolher arquivo</b>, e envie clicando no botão <b>upload</b>.</center><br /><br />\n";
print "<center>Transferir <b>SEMÁFORO</b> por arquivo CSV selecione o arquivo clicando no botão <b>escolher arquivo</b>, e envie clicando no botão <b>upload</b>.</center><br /><br />\n";
Pergunta
matheus.del-re
Boa Tarde Galera.
Vou tentar explicar essa minha grande dúvida da maneira mais clara possível, vamos lá:
Tenho um sistema que recebe um UPLOAD de um arquivo .CSV e insere corretamente no banco de dados todas as colunas e linhas necessárias, até que um cliente chegou a mim me questionando sobre as pastas que eram duplicadas toda vez que ele fazia um novo UPLOAD("e;Pastas duplicadas seriam digamos 2 ou mais vezes o mesmo CNPJ e CPF inseridos), então oque propus a ele foi:
Sempre que houver um novo upload ele confere se o CPF/CNPJ já está inserido no banco de dados.
1º -) Se o CPF/CNPJ não estiver inserido no banco de dados ele vai e criar o INSERT de registros normalmente.
2º-) Se o CPF/CNPJ já estiver inserido, ele cria um UPDATE nos registros, e faz o UPDATE dos arquivos com esse novo UPLOAD.
Espero que entendam essa minha duvida.
<?php
include "../_conexao/conexao.php";
//Transferir o arquivo
if (isset($_POST['submit'])) {
//Importar o arquivo transferido para o banco de dados
$sql = mysqli_query($conexao,"SELECT cpf_cnpj FROM semaforo");
$handle = fopen($_FILES['filename']['tmp_name'], "r");
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
if ($data[0] != 'situacao_primaria' && !empty($handle)) {
$import="INSERT into semaforo(id,situacao_primaria,status,data_indicacao,tipo_de_indicacao,tipo_de_distribuicao,categoria,codigo_penumper,nome_do_cliente,cpf_cnpj,negociadores,tipo_pessoa_cliente,uf,cep,municipio_do_cliente,advogado_gestor_interno,numero_operacao,sistema_origem,numero_operacao_origem,familia_do_produto,codigo_produto,nome_do_produto,codigo_agencia,nome_agencia,descricao_segmento,segmento_secundario,descricao_segmento_secundario,situacao_secundaria,data_recebimento,data_credito_liquidacao,valor_da_operacao,valor_transferido_para_creli,valor_da_divida,valor_saldo_contabil,qdt_dias_atraso,nome_da_garantia,ajuizado,codigo_do_ajuizamento,valor_ajuizado,tipo_de_acao,motivo_da_acao,avalista_nome,avalista_cpf_cnpj,avalista_tipo_pessoa,saldo_cm1,recup_judicial_falencia,escob_adm,data_inclusao_escob)values(null,'$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]','$data[12]','$data[13]','$data[14]','$data[15]','$data[16]','$data[17]','$data[18]','$data[19]','$data[20]','$data[21]','$data[22]','$data[23]','$data[24]','$data[25]','$data[26]','$data[27]','$data[28]','$data[29]','$data[30]','$data[31]','$data[32]','$data[33]','$data[34]','$data[35]','$data[36]','$data[37]','$data[38]','$data[39]','$data[40]','$data[41]','$data[42]','$data[43]','$data[44]','$data[45]','$data[46]')";
mysqli_query($conexao, $import) or die(mysqli_error($conexao));
}
}
fclose($handle);
print "<center>Transferir <b>SEMÁFORO</b> por arquivo CSV selecione o arquivo clicando no botão <b>escolher arquivo</b>, e envie clicando no botão <b>upload</b>.</center><br /><br />\n";
print "<form enctype='multipart/form-data' action='#' method='post'>";
print "<center><input size='50' type='file' name='filename'></center><br /><br />\n";
print "<center><input type='submit' name='submit' value='Upload'></center></form>";
//Visualizar formulário de transferência
} else {
print "<center>Transferir <b>SEMÁFORO</b> por arquivo CSV selecione o arquivo clicando no botão <b>escolher arquivo</b>, e envie clicando no botão <b>upload</b>.</center><br /><br />\n";
print "<form enctype='multipart/form-data' action='#' method='post'>";
print "<center><input size='50' type='file' name='filename'></center><br /><br />\n";
print "<center><input type='submit' name='submit' value='Upload'></center></form>";
}
?>
Esse é meu arquivo, espero que consigam me ajudar.
Agradeço desde já;
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.