php命令行不能获取mysql数据库_解决PHP在DOS命令行下无法链接MySQL数据库的方法...

解决PHP在DOS命令行下无法链接MySQL数据库的方法

发布于 2015-01-28 15:54:08 | 130 次阅读 | 评论: 0 | 来源: 网友投递

PHP开源脚本语言PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域。PHP的文件后缀名为php。

本文是一个解决PHP在DOS命令行下无法链接MySQL数据库的方法,感兴趣的同学参考下。

问题说明:

前段时间,由于要用 php 进行 Shell 编程时,碰到了 PHP 在 WEB 下可以连接 MySQL 而在 DOS COMMAND 命令行下却连接失败的问题。

正好今天朋友 xjb 也碰到了这个问题,所以写了这篇笔记,将此问题的描述以及解决记录下。

问题描述:用 web 方式, 可以链接 mysql, 但是在命令行下, 却提示:

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 内容如下:

text.php

if ( !mysql_connect(DBHOST, DBUSER,DBPWD) )

{

echo "连接失败!";

exit;

}

echo "连接成功!t";

?>

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

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

总结:在 windows 下安装 php 时, 为了避免配置文件混乱,将安装目录下的 php.ini 复制到 windows 目录下之后,应该将原来安装目录下的 php.ini 文件重命名或删除,以免造成在不同环境下执行时,查找配置文件不一致的情况发生。问题发生的原因一般都是非常非常简单,但查找、排除问题的过程,却是相当的烦人。

相关阅读:

解决PHP在DOS命令行下无法链接MySQL数据库的方法

Mac环境下php操作mysql数据库的方法分享

php实现下载生成某链接快捷方式的方法

php中存储用户ID和密码到mysql数据库的方法

php将csv文件导入到mysql数据库的方法

php将access数据库转换到mysql数据库的方法

php导入excel文件到mysql数据库的方法

php上传文件并存储到mysql数据库的方法

PHP编程实现csv文件导入mysql数据库的方法

php监测数据是否成功插入到Mysql数据库的方法

在命令行下运行PHP脚本[带参数]的方法

PHP命令行下批量生成静态html示例

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值