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

atualizar bd em parser


Guest marcia33

Pergunta

Guest marcia33

gente

estou tentando usar o seguinte parser para um txt:

<?php
//conexão com o banco de dados
   $hostname='localhost';
   $username='root';
   $banco='projeto_bd';
   $db=mysql_connect($hostname,$username);
   mysql_query("SET NAMES iso-8859-1");
   mysql_query("SET CHARACTER_SET iso-8859-1");
   mysql_select_db($banco,$db)or die(mysql_errno());

   $filename = 'retorno.txt';
   $f = fopen($filename, "r") or die("Não foi possível abrir $filename");
   $nomeprojeto=fgets($f,filesize($filename));
   fclose($f);

   $sql_f = "SELECT data_ini_fase,data_fim_fase FROM tab_fases WHERE nomeprojeto='GERAL' ORDER BY data_ini_fase ASC";
   $res_f = mysql_query($sql_f,$db) or die(mysql_error());
   $res_i = mysql_query($sql_f,$db) or die(mysql_error());
   $num_f = mysql_num_rows($res_f);

$fp = fopen($filename, "r") or die("Não foi possível abrir $filename");

while (!feof($fp)){
$string = fgets($fp, filesize($filename));
$string2 = explode(" ", $string);

if($string2[0]=="B"){
  
$i=1;
while($i<=$num_f){
     if($string2[1]==$i){
      // atualiza o banco de dados
   $sqlr= ("UPDATE tab_recursos SET dimx".$i."=".$string2[7].",dimy".$i."=".$string2[8].",altura".$i."=".$string2[9].",posicaox".$i."=".$string2[4].",posicaoy".$i."=".$string2[5]." WHERE nomeprojeto='".$nomeprojeto."'  AND numrecurso=".$string2[2]) or die(mysql_error());
     $insr=mysql_query($sqlr);
  }
  $i++;
}
}
if($string2[0]=="I"){
$i=1;
while($i<=$num_f){
  if($string2[1]==$i){
    // atualiza o banco de dados
   $sqli=("UPDATE tab_instalacoes SET dimx".$i."=".$string2[5].",dimy".$i."=".$string2[6].",altura".$i."=".$string2[7].",posicaox".$i."=".$string2[3].",posicaoy".$i."=".$string2[4]." WHERE nomeprojeto='".$nomeprojeto."'  AND elemento='".$string2[2]."'") or die(mysql_error());
   $insi=mysql_query($sqli);
  }
$i++;
}
}

}
    // close file
    fclose($fp);
    
    //abre outro arquivo
    //header("Location:index2.php?nomeprojeto=".$nomeprojeto);
?>

mas não está atualizando o meu banco de dados com os dados que eu envio. Engraçado que seu eu der um echo e colocar no phpMyAdmin ele atualiza. Será que não funciona porque está dentro da leitura do arquivo txt?

Alguém sabe me responder isso?

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
Guest marcia33

Estou aqui tentando de novo obter uma resposta para minha dúvida, quem sabe dessa vez?

gente

estou tentando usar o seguinte parser para um txt:

<?php
//conexão com o banco de dados
   $hostname='localhost';
   $username='root';
   $banco='projeto_bd';
   $db=mysql_connect($hostname,$username);
   mysql_query("SET NAMES iso-8859-1");
   mysql_query("SET CHARACTER_SET iso-8859-1");
   mysql_select_db($banco,$db)or die(mysql_errno());

   $filename = 'retorno.txt';
   $f = fopen($filename, "r") or die("Não foi possível abrir $filename");
   $nomeprojeto=fgets($f,filesize($filename));
   fclose($f);

   $sql_f = "SELECT data_ini_fase,data_fim_fase FROM tab_fases WHERE nomeprojeto='GERAL' ORDER BY data_ini_fase ASC";
   $res_f = mysql_query($sql_f,$db) or die(mysql_error());
   $res_i = mysql_query($sql_f,$db) or die(mysql_error());
   $num_f = mysql_num_rows($res_f);

$fp = fopen($filename, "r") or die("Não foi possível abrir $filename");

while (!feof($fp)){
$string = fgets($fp, filesize($filename));
$string2 = explode(" ", $string);

if($string2[0]=="B"){
  
$i=1;
while($i<=$num_f){
     if($string2[1]==$i){
      // atualiza o banco de dados
   $sqlr= ("UPDATE tab_recursos SET dimx".$i."=".$string2[7].",dimy".$i."=".$string2[8].",altura".$i."=".$string2[9].",posicaox".$i."=".$string2[4].",posicaoy".$i."=".$string2[5]." WHERE nomeprojeto='".$nomeprojeto."'  AND numrecurso=".$string2[2]) or die(mysql_error());
     $insr=mysql_query($sqlr);
  }
  $i++;
}
}
if($string2[0]=="I"){
$i=1;
while($i<=$num_f){
  if($string2[1]==$i){
    // atualiza o banco de dados
   $sqli=("UPDATE tab_instalacoes SET dimx".$i."=".$string2[5].",dimy".$i."=".$string2[6].",altura".$i."=".$string2[7].",posicaox".$i."=".$string2[3].",posicaoy".$i."=".$string2[4]." WHERE nomeprojeto='".$nomeprojeto."'  AND elemento='".$string2[2]."'") or die(mysql_error());
   $insi=mysql_query($sqli);
  }
$i++;
}
}

}
    // close file
    fclose($fp);
    
    //abre outro arquivo
    //header("Location:index2.php?nomeprojeto=".$nomeprojeto);
?>

mas não está atualizando o meu banco de dados com os dados que eu envio. Engraçado que seu eu der um echo e colocar no phpMyAdmin ele atualiza. Será que não funciona porque está dentro da leitura do arquivo txt?

Alguém sabe me responder isso?

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,2k
    • Posts
      652k
×
×
  • Criar Novo...