当前位置:首页 > PHP教程 > php应用 > 列表

undefined function mysql_connect

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-11 13:38:32 浏览: 评论:0 

在 windows 下安装 php 时,为了避免配置文件混乱,将安装目录下的 php.ini 复制到 windows 目录下之后,应该将原来安装目录下的 php.ini 文件重命名或删除,以免造成在不同环境下执行时,查找配置文件不一致的情况发生.

fatal error: undefined function mysql_connect() 

环境:windows 2003, php 5.2.0, mysql 5.0, apache 2.0 

在 php.ini 中,已经将 php_mysql.dll 的模块选项给打开了,测试的脚本也很简单,就一个 mysql_conect 函数,内容如下:

php.ini:extension=php_mysql.dll 

测试脚本 test.php 内容如下:

  1. <?php 
  2. if ( !mysql_connect(dbhost, dbuser,dbpwd) )  
  3. //开源代码phpfensi.com 
  4. echo "连接失败!";  
  5. exit;  
  6. }  
  7. echo "连接成功!t";  
  8. ?> 

用 web 方式调用 http://localhost/test.php,执行正常,显示"连接成功". 

但用 dos command 命令行的方式调用 d:/php/php.exe test.php 却显示连接失败,错误信息为:fatal error:undefined function mysql_connect() 

很显然,在 dos command 命令行的环境下,mysql 的模块没有被调用,方法弄尽,仍无法解决,百思不得其解,后来,用写了个脚本,看看 php 的配置,在两个环境下有什么不同,代码如下:

<?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。 

而在 c:windows 和 d:php 目录下,都存在一个 php.ini 文件,d:php 目录下的 php.ini 没有将 extension=php_mysql.dll 模块打开,于是将 d:phpphp.ini 删除,只保留 c:windowsphp.ini,问题解决.

Tags: undefined function mysql_connect

分享到: