Conheça as melhorias da versão 8.0, 8.1, 8.2!
Clique aqui para saber mais
Dúvida query manual Pessoal, não sei qual meu erro, quero executar um query a partir de um arquivo no servidor, esta conectando porem não da erro e não executa. exemplo arquivo.txt : UPDATE photos SET keywords = '-378-' Where title= 'LJA15SP2TFVL0008'; UPDATE photos SET keywords = '-379-' Where title= 'LJA15SP2TFVL0009'; meu codigo: ...
LJ
Dúvida query manual  
Fechado
Pessoal, não sei qual meu erro, quero executar um query a partir de um arquivo no servidor, esta conectando porem não da erro e não executa.
exemplo arquivo.txt :
UPDATE photos SET keywords = '-378-' Where title= 'LJA15SP2TFVL0008';
UPDATE photos SET keywords = '-379-' Where title= 'LJA15SP2TFVL0009';

meu codigo:
 
  1. <?php
  2. try
  3. {
  4. // open a transaction with database 'samples'
  5. TTransaction::open('suafoto');
  6. $conn = TTransaction::get(); //obtem uma conexão
  7. // get the form data into an active record Book
  8. $object = $this->form->getData();
  9. if($object->file<>"")
  10. {
  11. $querie = file_get_contents("app/output/".$object->file);
  12. <b>$result = $conn->query($querie);</b>
  13. new TMessage('info','Banco atualizado com sucesso '.$result->rowCount());
  14. }else{
  15. new TMessage('info','Escolha um arquivo');
  16. }
  17. // close the transaction
  18. TTransaction::close();
  19. }
  20. catch (Exception $e) // in case of exception
  21. {
  22. // shows the exception error message
  23. new TMessage('error', '<b>Error</b> ' . $e->getMessage());
  24. // undo all pending operations
  25. TTransaction::rollback();
  26. }
  27. ?>

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (2)


FC

São dois updates ao mesmo tempo? Acho que não rola. Tentar fazer um por vez.
LJ

Obrigado Felipe, testei com uma linha e funcionou, então mudei meu código:
Assim leio uma linha de cada vez. OBRIGADO

if($object->file<>"")
{
$contador = 0;
$myfile = fopen("app/output/".$object->file, "r") or die("Unable to open file!");
while(!feof($myfile)) {
$querie = fgets($myfile);
if ($querie <>""){
$result = $conn->query($querie);
$contador++;
}

}
fclose($myfile);



new TMessage('info','Banco atualizado com sucesso '.$contador);
}else{
new TMessage('info','Escolha um arquivo');
}