menu
Fórum Adianti
menu Menu
erro: No active transactions tentei listar uma tabela, e tambem tentei atraves do form da a mesma mensagem quando start a transacao No active transactions o .ini ta ok, estou tentando com mysql salus.ini host =127.0.0.1 name =bdsalus user =root pass = type =mysql script ...
HL
erro: No active transactions  
Fechado
tentei listar uma tabela, e tambem tentei atraves do form da a mesma mensagem quando start a transacao
No active transactions
o .ini ta ok, estou tentando com mysql

salus.ini
host =127.0.0.1 name =bdsalus user =root pass = type =mysql


script
  1. <?php
  2. try
  3. {
  4.     TTransaction::open('salus');
  5.     $conn TTransaction::get(); // get PDO connection
  6.     
  7.     // run query
  8.     $result $conn->query('SELECT * from cdusuarior ');
  9.     
  10.     // show results
  11.     foreach ($result as $row)
  12.     {
  13.         print $row['us_id'] . '-';
  14.         print $row['us_nome'] . "<br>\\n";
  15.     }
  16.     TTransaction::close(); // close transaction
  17. }
  18. catch (Exception $e)
  19. {
  20.     new TMessage('error'$e->getMessage());
  21. }
  22. ?>

Pacotão Dominando o Adianti Framework 7
O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado! Versão 7.4


Dominando o Adianti 7 Quero me inscrever agora!

Comentários (5)


PD

Oi Helder,

Logo após dar um TTransaction::get(), dê um var_dump na variável $conn, vamos analisar seu conteúdo. Este é o código completo ou tem mais alguma coisa?
HL

coloquei o var_dump ($conn);
mas não chegaa executar informa logo a mensagem no active transactions
codigo completo

  1. <?php
  2. /**
  3.  * StandardFormDataGridView
  4.  *
  5.  * @version    1.0
  6.  * @package    samples
  7.  * @subpackage tutor
  8.  * @author     Pablo Dall'Oglio
  9.  * @copyright  Copyright (c) 2006-2011 Adianti Solutions Ltd. (http://www.adianti.com.br)
  10.  * @license    http://www.adianti.com.br/framework-license
  11.  */
  12. class cdprofissional extends TStandardFormList
  13. {
  14.     protected $form;      // formulário de cadastro
  15.     protected $datagrid;  // listagem
  16.     protected $loaded;
  17.     protected $pageNavigation;  // pagination component
  18.     
  19.     /**
  20.      * Class constructor
  21.      * Creates the page, the form and the listing
  22.      */
  23.     public function __construct()
  24.     {
  25.         parent::__construct();
  26.         
  27.         try 
  28.         { 
  29.         TTransaction::open('salus');
  30.          $conn TTransaction::get(); // get PDO connection
  31.          print  var_dump ($conn);  
  32.             // run query
  33.             $result $conn->query('SELECT * from cdusuario ');
  34.             
  35.             // show results 
  36.             foreach ($result as $row
  37.             { 
  38.                 print $row['us_id'] . '-'
  39.                 print $row['us_nome'] . "<br>\\n"
  40.             } 
  41.          TTransaction::close(); // close transaction 
  42.         
  43.         catch (Exception $e
  44.         { 
  45.             new TMessage('error'$e->getMessage()); 
  46.         }  
  47.         
  48.         
  49.         
  50.     }
  51. }
  52. ?>
PD

Helder,

O erro é que você está estendendo TStandardFormList. Essa classe já tem um comportamento pré-definido, como você poderá ler no livro. Estenda TPage para a maioria dos casos.

um abraço,
Pablo
AV

Olá Pablo!

Estou com o seguinte erro: error could not find driver.
Segue código:
  1. <?php 
  2. class ListUser extends TPage
  3.     public function __construct() 
  4.     { 
  5.         parent::__construct(); 
  6.         try 
  7.         { 
  8.             TTransaction::open('samples'); // open transaction
  9.             $conn TTransaction::get(); // get PDO connection
  10.             
  11.             print  var_dump ($conn);
  12.             // run query
  13.             $result $conn->query('SELECT id, name from user order by id');
  14.             
  15.             // show results 
  16.             foreach ($result as $row
  17.             { 
  18.                 print $row['id'] . '-'
  19.                 print $row['name'] . "<br>\n"
  20.             } 
  21.             TTransaction::close(); // close transaction 
  22.         
  23.         catch (Exception $e
  24.         { 
  25.             new TMessage('error'$e->getMessage()); 
  26.         } 
  27.     } 
  28. ?>
PD

Oi Aldriano,

Dentro do "samples.ini" você deve ter especificado o parâmetro type, que indica qual driver de banco é usado para a conexão. O que deve ter acontecido é que o seu PHP não deve estar com o suporte habilitado para aquele tipo de banco de dados (veja o php.ini). No windows, basta remover os ";" da frente das DLL's.

abraço,
Pablo