Fatal Error: Class 'mysqli' not found 多解决方案整合


/******************************************************/

方案1

/***************************************************/

有的时候下载了PHPmyadmin访问提示“缺少 mysqli 扩展。请检查 PHP 配置。”大家可以试试以下方法能不能解决。

 

phpMyAdmin 缺少 mysqli 扩展。请检查 PHP 配置 的解决方案:

缺少 mysqli 扩展。请检查 PHP 配置。

打开你的php.ini->具体看你的安装目录。

找到

 

;extension=php_msql.dll

;extension=php_mssql.dll

extension=php_mysql.dll

extension=php_mysqli.dll

 

需要开启哪个扩展,就把这一行前面的分号去掉就行,注意要重启Apache 或者IIS

 

解决步骤:

1.看看php的ext目录中是否有php_mysqli.dll文件

如果有,继续下面的步骤。没有的话重新装个php 

2.打开php.ini,找到

 

;extension=php_mysqli.dll把前面的;去掉

 

3.找到;extension_dir="./ext"

把前面的分号";"去掉,改为(相对于php的安装路径的ext目录)

extension_dir = "e:phpext"

e:php为php的存放目录

4.把php.ini拷贝到c:windows下

5.把libmysql.dll复制到Windows下面的System32目录(这个很关键)

6.重新启动IIS(不是网站)

cmd下运行 iisreset /RESTART 

如果上面方法还不行,可参考下面方法操作

第一步,输出 phpinfo() 看看 MySQL 模块是否成功装载,如果成功装载说明你见鬼了,否则看第二步,

IIS下phpinfo()无mysql模块是何原因?

原先用的php是.msi安装的,后来全部重来了一次,换成压缩包形式安装的。

又照着配置了php.ini,复制到winnt,复制libmysql.dll到system32。

之后测试成功。。。

第二步,查看 extension_dir 的设置是否正确

第三步,查看是否把 libmysql.dll 文件复制到 c:windowssystem32 下

1、没有正确安装Mysql数据库,在系统服务中Mysql相关的服务没有启动   (请查看正确安装Mysql的方法)

 

2、在系统的 system32(C:windowssystem32) 目录下缺少 libmysql.dll文件,解决方法是找到php目录下的libmysql.dll,并将libmysql.dll复制到C:windowssystem32目录中,然后重新启动Web服务。

 

3、在C:windows目录下的php.ini文件中,没有将“;extension=php_mysql.dll”中的前面一个“;”去掉,所以不能使用相应功能,解决方法是打开php.ini文件

 

4、Mysql目录没有读取权限,正确的目录权限如下:

administrator   完全控制

system    完全控制

user    读取加运行

其他的用户权限全部删除(也可保留,但安全性不高,建议删除),然后重启MYsql服务和Web服务。


/**************************************/

方案2  原文地址:http://blog.csdn.net/kofandlizi/article/details/6262412

/**************************************/

新装的系统,拷了一个以前的项目,运行一个有数据库访问操作的php页面时一直提示这个错误:Class ‘mysqli’ not found。我将libmysql.dll拷到c:/windows/system32下就解决了问题。但是想了下这个方法并不是很好,于是到网上找到下面这段:

很多安装PHP的教程,都是教大家把php里的libmysql.dll拷贝到c:/windows目录下(有的教程会说还要把php.ini等文件拷到系统目录的,其实一个文件都不用拷贝去的。)。 是否一定要这样做呢?很多网上的帖子都是人云亦云,别人说要,他也说要。 其实用的,每次重装系统,都这样拷一遍,折腾一遍,太辛苦了。 用过APMServ这个傻瓜式安装包的朋友可能会发觉,这个东西,在第一次安装后,以后重装系统也不会重新安装的,只要运行一下主程序,就可以运行WAMP的了,不用折腾一遍的。 可能有人会认为它把libmysql.dll拷贝到c:/windows目录下了,其实不是的,不信去找一找。 既然APMServ可以做到,那么我们也可以做得,比对了APMServ和我们安装的WAMP,找到奥妙就在apache的httpd.conf配置文件。 在httpd.conf加载PHP时,大家都知道是添加这句: LoadModule php5_module E:/server/php528/php5apache2_2.dll 可能有些朋友也知道,添加这句后,就不用把php.ini拷贝到系统目录: PHPIniDir E:/server/php528/php.ini 现在我说说不用把libmysql.dll拷到系统目录的办法,就是

在加载php5_module前,添加这句: LoadFile “E:/server/php528/libmysql.dll”


我遇到这个问题的时候,采用的是方案1;解决了。同样遇到此问题的同学,可以自己参考着试一下;

如果有更好的方法或还有其他问题,请留言分享,探讨;




注:本文转载自http://blog.csdn.net/zhengleiqing/article/details/53193022,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除。
上一篇 下一篇

评论



最新评论

daliangzao_qq_com: 1112 查看原文 12月03日 10:57
PHP笔记: ypengchao@126.com 查看原文 06月26日 11:38
PHP笔记: 用数据库 查看原文 06月26日 11:37
网站/shl设计: 如果关闭浏览器了,session就没有了呀。再打开浏览器不就可以重新登陆了。 查看原文 05月28日 15:26
网站/shl设计: 站长怎么联系你有给问题请教。 查看原文 05月28日 15:25

分享

扫一扫,快速分享到微信

赞助商