hbaker 0 Denunciar post Postado Março 8, 2008 Olá, tenho um arquivo texto com vários inserts nele, faço a leitura das linhas via código, cada linha é um insert. Então coloquei isso em um loop, o problema é que ele só executa no banco só o ultimo insert. E qualquer linha do insert no arquivo que pegar, copiar e executar no mysql ele insere. Portanto acredito que o erro está nessa rotina abaixo q uso para inserir no banco e não no conteúdo do arquivo texto. alguém já passou por isso? o código é: $arq=fopen("./dados.sql","r"); $i=0; while(!feof($arq)) { $sql[$i]=fgets($arq); $i++; } foreach($sql as $query) { if(mysql_query($query)) { echo("gravou"); } else { echo "<br><center><font face=\"Verdana\" size=\"1\" color=\"#cf0800\">Não foi possivel importar! - $query<br></font></center>"; } } mysql_close($conn); fclose($arq); Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Março 8, 2008 Cadê a função que serve para gravar no banco de dados ? pelo que percebi, você está usando a função mysql_query, mais está faltando o INSERT ;) Compartilhar este post Link para o post Compartilhar em outros sites
hbaker 0 Denunciar post Postado Março 8, 2008 Cadê a função que serve para gravar no banco de dados ? pelo que percebi, você está usando a função mysql_query, mais está faltando o INSERT ;) Então, as funções que executo no mysql_query estão em um arquivo texto chamado dados.sql, vou lendo linha por linha e executando cada linha que leio no laço foreach. Ele le as linhas todas corretas, mas o engraçado é que parece q ele só executa a ultima, pois no caso só fica no banco o ultimo insert dessa lista. segue abaixo um pedaço do arquivo dados.sql com as funções q executo: INSERT INTO aluno(alu_codigo,alu_login,alu_senha,alu_status,alu_nome,alu_rg, alu_nome2,alu_ano,alu_serie,alu_seriecurso,bol_codigo) VALUES(8, '1051639001', '993324', 'A', 'nome do aluno', '105.163.900/1', 'nome2', 2008, '1º ANO E. F.', 'ENSINO FUNDAMENTAL I', 7); INSERT INTO boletim(bol_codigo,bol_observacao) VALUES(7, null); INSERT INTO disciplina_boletim( dis_codigo , bol_codigo , db_nota1bim , db_nota2bim , db_nota3bim , db_nota4bim , db_falta1bim , db_falta2bim , db_falta3bim , db_falta4bim , db_recup1bim , db_recup2bim , db_recup3bim , db_recup4bim , db_total , db_media , db_rec , db_cargahoraria ) VALUES (12, 7, 5, null, null, null, null, null, null, null, null, null, null, null, 5, 1.0, null, 130); INSERT INTO boletim(bol_codigo,bol_observacao) VALUES(8, null); Compartilhar este post Link para o post Compartilhar em outros sites
hbaker 0 Denunciar post Postado Março 8, 2008 Cadê a função que serve para gravar no banco de dados ? pelo que percebi, você está usando a função mysql_query, mais está faltando o INSERT ;) Então, as funções que executo no mysql_query estão em um arquivo texto chamado dados.sql, vou lendo linha por linha e executando cada linha que leio no laço foreach. Ele le as linhas todas corretas, mas o engraçado é que parece q ele só executa a ultima, pois no caso só fica no banco o ultimo insert dessa lista. segue abaixo um pedaço do arquivo dados.sql com as funções q executo: INSERT INTO aluno(alu_codigo,alu_login,alu_senha,alu_status,alu_nome,alu_rg, alu_nome2,alu_ano,alu_serie,alu_seriecurso,bol_codigo) VALUES(8, '1051639001', '993324', 'A', 'nome do aluno', '105.163.900/1', 'nome2', 2008, '1º ANO E. F.', 'ENSINO FUNDAMENTAL I', 7); INSERT INTO boletim(bol_codigo,bol_observacao) VALUES(7, null); INSERT INTO disciplina_boletim( dis_codigo , bol_codigo , db_nota1bim , db_nota2bim , db_nota3bim , db_nota4bim , db_falta1bim , db_falta2bim , db_falta3bim , db_falta4bim , db_recup1bim , db_recup2bim , db_recup3bim , db_recup4bim , db_total , db_media , db_rec , db_cargahoraria ) VALUES (12, 7, 5, null, null, null, null, null, null, null, null, null, null, null, 5, 1.0, null, 130); INSERT INTO boletim(bol_codigo,bol_observacao) VALUES(8, null); valeu pela força, acabei de resolver eu tive que tirar os ';' do final de cada instrução do arquivo texto... agora está gravando tudo direitinho no banco, apartir do arquivo texto... bom fds Compartilhar este post Link para o post Compartilhar em outros sites