Inscrições abertas para nosso Webinar anual Adianti Framework 2024!
Clique aqui para saber mais
Interbase/Firebird Alguém já conseguiu conectar o FrameWork ao Interbase/Firebird? Já fiz um compilado de todas os posts encontrados neste Fórum e... nada :( Ao criar um novo modelo através do assistente só recebo a mensagem Driver de banco de dados não encontrado: ibase. Já fiz: No servidor local Descomentar o ';' do php_pdo_firebird No TConnection.php $conn = new PDO("firebird:dbn...
JF
Interbase/Firebird  
Alguém já conseguiu conectar o FrameWork ao Interbase/Firebird? Já fiz um compilado de todas os posts encontrados neste Fórum e... nada :(
Ao criar um novo modelo através do assistente só recebo a mensagem Driver de banco de dados não encontrado: ibase.

Já fiz:

No servidor local
Descomentar o ';' do php_pdo_firebird

No TConnection.php
$conn = new PDO("firebird:dbname={$host}:{$name}", $user, $pass);
$conn->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER);

No config.ini
host =
name = C:DBFIREBIRD.FDB
user = sysdba
pass = masterkey
type = ibase
passar o caminho real do banco, se por na app database e passar so "app/database/banco.fdb" não funciona

O resultado do código abaixo está em arquivo anexo.

  1. <?php
  2. foreach(PDO::getAvailableDrivers() as $driver
  3. {
  4. echo $driver.'n<br />';
  5. }
  6. ?>



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 (9)


MG

Por via das dúvidas, a extesion php_interbase está ativo em seu servidor?
JF

Sim, pelo menos é o que mostra a figura em anexo, ele aparece na listagem de conexões PDO ativas :(
MG

João, consegue capturar a exception quando TConnection é acionado?
No caminho em config.ini, o banco de dados está em c:? Se tiver em alguma pasta, acho que deve informar o caminho inteiro.
JF

Coloquei (provisoriamente) direto no raiz C: para não ter dúvidas quanto ao patch. No TConnection eu coloco uma TMessage logo após o case 'ibase': para ver se está passando por ali, a mensagem abre. Quanto ao capturar a exception não sei como fazer :(
MG

Veja, você poderia colocar um try .... catch... para capturar o erro, exemplo:

  1. <?php
  2. public function onEdit()
  3. {
  4.      try {
  5.            TTransaction::open('config');
  6.            .... <--- aqui o seu código
  7.            TTransaction::close();
  8.      } catch (Exception $e) {
  9.           var_dump($e->getMessage());
  10.      }
  11. }
  12. ?>
NR

João, pelo que você mencionou o problema é no Studio ao tentar criar os modelos.

Lembre que o Studio é executado por phpgtk, e a configuração que você fez habilitando o firebird foi para o ambiente web.

São configurações distintas, confirme que o firebird está habilitado em ambas.
JF

Você tem razão Nataniel!
Mas onde se configura o PGPGTK? Procurei um php.ini na pasta de instalação do Studio e não achei. Só achei na pasta .Adianti Studiophp-gtk2 um arquivo semelhante chamado php-cli.ini onde inclui duas extensões (as dll estão em .Adianti Studiophp-gtk2ext) mas não funcionou, ficando assim:
...
extension = php_sqlite.dll
extension = php_pdo_mysql.dll
extension = php_pdo_pgsql.dll
extension = php_pdo_sqlite.dll
extension = php_pdo_odbc.dll

extension = php_interbase.dll <---- inclui esta
extension = php_pdo_firebird.dll <---- inclui esta
...

Estaria certa esta configuração:
NR

Aqui encontrei a pasta em C:/phpgtk2
CB

ola pessoal
pelo q eu sei o studio nao suporta firebird.
eu ja tentei e nao consegui, configuro o framework e esta funcionando.
mas o studio nao conecta.

Pablo socorre nos. Oque vc precisa pra fazer esse ajuste. Nos podemos ajudar.
Eu comprei a versao pro.