【问题标题】:unixODBC Freetds PHP ProblemunixODBC Freetds PHP 问题
【发布时间】:2010-08-16 06:19:58
【问题描述】:

我正在使用 Debian。我安装了 unixODBC 以及 FreeTDS。我正在使用 PHP

我已经阅读了几本 How-Tos,但遇到了一个问题。

我使用 tsql 测试了 FreeTDS,它可以工作。

我使用 isql 测试了 unixODBC,它可以工作。

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

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

我找到了多个 php.ini 文件。 Apache2 使用的是哪一个?里面有什么需要设置的吗?

是否有一些我错过了操作指南中没有的设置?

非常感谢所有帮助。

【问题讨论】:

  • cli和apache2一般都有php.ini文件

标签: php sql-server unix


【解决方案1】:

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

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

这对我来说可以连接到多个 ODBC 数据库。 (您的配置文件可能在其他地方)

【讨论】:

  • 嗨 - 可能需要这些变量。但最直接的问题是“调用未定义的函数 odbc_connect()”。 Sanmai 是正确的 - OP 首先需要安装 php5-mssql 和/或 php5-odbc。
  • @shrikant-soni 表示他确实在评论中安装了这些,我假设他尝试过但没有成功,可能会更改他的错误消息???
  • 可能他安装后没有重启Apache。
【解决方案2】:
  1. 您需要安装php5-mssql 和/或php5-odbc。 我建议您肯定安装这两个。

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

【讨论】:

    猜你喜欢
    • 2012-09-09
    • 2013-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-22
    • 2011-02-24
    • 1970-01-01
    • 2019-12-20
    相关资源
    最近更新 更多