unixODBC Freetds PHP问题

问题描述:

我正在使用Debian。我安装了unixODBC以及FreeTDS。我正在使用PHPunixODBC Freetds PHP问题

我已经阅读了几个How-Tos,并且遇到了问题。

我用tsql测试了FreeTDS,它工作正常。

我使用isql测试了unixODBC,它工作正常。

当我在PHP中创建脚本并尝试访问数据库时,出现以下错误。

致命错误:调用未定义的函数odbc_connect()

我已经发现多的php.ini文件。 Apache2使用哪一个?有没有需要设置的东西。

有没有一些设置,我错过了不是在怎么样的seting?

非常感谢所有帮助。

+0

通常有一个cli和apache2的php.ini文件 – jjclarkson 2010-08-23 21:31:20

您可能需要提供环境变量指向你的ODBC配置文件的位置:

<?php 
putenv("FREETDSCONF=/etc/freetds/freetds.conf"); 
putenv("ODBCSYSINI=/etc/odbcinst.ini"); 
putenv("ODBCINI=/etc/odbc.ini"); 

这工作对我连接到几个ODBC数据库。 (你的配置文件可能在其他地方)

+0

嗨 - 可能需要这些变量。但是直接的问题是“调用未定义的函数odbc_connect()”。 Sanmai是正确的 - OP首先需要安装php5-mssql和/或php5-odbc。 – paulsm4 2010-08-20 04:46:50

+0

@ shrikant-soni说他确实在他的评论中安装了这些内容,我假设他尝试了这一点,但它没有起作用,可能会改变他的错误信息? – jjclarkson 2010-08-20 18:29:54

+0

也许他在安装后没有重启Apache。 – sanmai 2010-08-23 07:23:42

  1. 您需要安装php5-mssql和/或php5-odbc。 我建议你安装两者。

  2. /etc/php5/conf.d//etc/php5/apache2/php.ini的文件用于在Debian中存储PHP配置选项。

+0

不工作。请按照你说的步骤,但不工作! – 2010-08-16 08:26:42