Arquivo TXT - PHP - Mysql - Explode
Bom dia!!
Pesquisando aqui no fórum mesmo, encontrei um código que será de grande valia para mim:
$tabela = "teste";
$arquivo = 'arquivo.txt';
$arq = fopen($arquivo,'r');
while(!feof($arq))
for($i=0; $i<1; $i++){
if ($conteudo = fgets($arq)){
$ll++;
$linha = explode(';', $conteudo);
}
$sql_cns = mysql_query("SELECT id FROM $tabela WHERE id = '".$linha[0]."'")
or die (mysql_error());
$row_cns = mysql_num_rows($sql_cns);
if($row_cns == 0){
mysql_query("INSERT INTO $tabela (id, nome, email) VALUES ('$linha[0]','$linha[1]', '$linha[2]')")
or die (mysql_error());
}else{
mysql_query("UPDATE $tabela SET nome='".$linha[1]."', email='".$linha[2]."' WHERE id = '".$linha[0]."'")
or die (mysql_error());
}
$linha = array();// linpa o array de $linha e volta para o for
}
echo "<script>
alert('-----IMPORTAÇÃO EFETUADA COM SUCESSO-----');
window.location = 'inicio.php?pg=principal';
</script>";
Ocorre, entretanto, que meu arquivo txt não possui uma string bem definida, isto é não existe ";" para separar as linhas. Eu precisaria duma função que separasse as linhas do meu arquivo e, inclusive, pegasse da primeira linha apenas uma data - que seria a data da última atualização do arquivo txt.
Segue como está estruturado o arquivo txt:
---------- Inventário Jun 26 05:26:46 2014 -----------
0 Caixa de Uva x 400
1 Suco de Laranja x 22
2 Maçã x 1
3 Mel x 9
Não tem problema cada vez que for inserir os dados novos apagar os anteriores, já que serão, por tabela, no máximo 300 valores.
Agradeço!!
Diogo
Discussão (8)
Carregando comentários...