De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Manipulando o MS Access (.mdb) com PHP no FreeBSD
Colaboração: Gilliatt Borges Bastos
Data de Publicação: 23 de fevereiro de 2011
Depois de muita pesquisa e testes cheguei a solução para acessar MDB com PHP. Essa solução foi montada em FreeBSD 8 mas pode ser adaptada facilmente para outra plataforma. Para ficar perfeita a instalação dos componentes necessários no FreeBSD, teremos que fazer uns ajustes na instalação do mdbtools. Isso porque a instalação do mdbtools pelo ports do FreeBSD não compila a biblioteca necessária para o ODBC fazer a conexão com o banco.
Vamos a instalação dos pacotes necessários
# cd /usr/ports/database/unixODBC/
# make install clean
# cd /usr/ports/databases/php5-odbc/
# make install clean
Nesse site você baixa a versão mais recente do mdbtools
http://www.brothersoft.com/mdb-tools-download-71742.html
Documentação pode ser encontrada em http://mdbtools.sourceforge.net/install/
# mkdir /opt
# tar xvzf mdbtools-0.6pre1.tar.gz
# cd mdbtools-0.6pre1
# ./configure prefix=/opt with-unixodbc=/usr/local
# make all && make install
# vi /usr/local/etc/odbcinst.ini
[MDB]
Description = Driver MDB para ODBC
Driver = /usr/lib/libmdbodbc.so.0
Setup =
FileUsage =
CPTimeout =
CPReuse =
# vi /usr/local/etc/odbc.ini
[TESTE]
Description = Microsoft Access Try DB
Driver = MDB
Database = /var/www/html/teste.mdb
Servername = localhost
Username =
Password =
port = 5432
Vamos criar uma pagina para testar o acesso.
# vi teste_mdb.php
<?php
//phpinfo();
$db = odbc_connect( TESTE , ", ");
if($db){
print Acessando banco ;
} else {
print Não foi possível acessar o banco ;
}
odbc_close($db);
?>
Caso não acesse o banco com uma mensagem parecida com essa:
Warning: odbc_connect() [function.odbc-connect]: SQL error:
[unixODBC][FreeTDS][SQL Server]Unable to connect to data source, SQL state
S1000 in SQLConnect in .. on line .
Não foi possível acessar o banco
Warning: odbc_close(): supplied argument is not a valid ODBC-Link resource
in . on line .
Verifique a instalação do mdbtools e que a biblioteca (libmdbodbc.so.0
)
está com o caminho correto na configuração do driver.
Blog do autor: http://gilliattbastos.beesoft.com.br/