首页 | 新闻 | 交流 | 问吧 | 文档 | 手册 | 下载 | 博客

在dos下或web下Fatal Error: undefined function mysql_connect()

作者:  时间: 2011-05-19

用 web 方式调用 http://localhost/test.php, 执行正常, 显示"连接成功".
  但用 dos command 命令行的方式调用 d:/php/php.exe test.php 却显示连接失败, 错误信息为: Fatal Error: undefined function mysql_connect()
  很显然, 在 dos command 命令行的环境下,mysql 的模块没有被调用。方法弄尽, 仍无法解决. 百思不得其解. 后来, 用写了个脚本, 看看 php 的配置, 在两个环境下有什么不同:
test.php

<?
echo phpinfo();
?>

仔细查看两个环境下 phpinfo() 输入的 php 配置信息,终于发现了问题所在:
Web 方式 http://localhost/test.php 方式调用时, 其 Configuration File (php.ini) Path 显示为 C:WINDOWSphp.ini。
DOS COMMAND 命令行方式 d:/php/php.exe test.php 调用时, 其 Configuration File (php.ini) Path 为 d:phpphp.ini。

在web下使用mysql_connect正常但是在DOS报错。主要原因是,我们在d:\php下和c:\windows下都有个php.ini 而为了是php在不同环境下都能使用,我们尽量将d:\php下的php.ini改名,使之不同。