phpMyAdmin的mbstring错误
每当我尝试进入我的phpMyAdmin,它给了我这个错误:
The mbstring extension is missing. Please check your PHP configuration.
我已经看遍了互联网上的一个修复,但我发现的错误是类似于我的错误,但不一样,或完全相同,但没有修复给定。
我也使用Windows。
在Centos中,我安装了一个php扩展。 我是这样做的:
yum install php-mbstring
在某个时候,我也有同样的问题。 我试图replace.dll
文件,但没有结果。 经过一些debugging,我find了解决办法。
我在我的php.ini
文件中有这个:
extension_dir = "ext"
我得到的mbstring extension missing
错误。 所以我试图把扩展目录的完整path,它适用于我。 喜欢:
extension_dir = "C:\php\ext"
希望这会有所帮助。
干杯,
检查你的php安装根目录下的php.ini文件。 在configuration的扩展部分中,您应该可以find:
;extension=php_mbstring.dll
删除领先的';' 取消注释并启用扩展,如下所示:
extension=php_mbstring.dll
重新启动你的Apache,它应该工作。
编辑:我刚刚读到,你已经在使用虚拟主机。 你的虚拟主机有一个接口,你可以设置PHPvariables等? 或者.ini文件,你可以编辑?
如果不是,你可能会被迫与networking主机通话,并要求他们启用该特定的扩展。
我的情况是这样的
奇怪的是,我注意到,WAMP使用的php.ini文件不是php目录中的文件,而是在bin目录中引用了php.ini文件…我复制了我的php.ini文件来打印\ bin \ apache \ apache2.4.17 \ bin目录,重启wamp服务,PHPMyadminclosures并运行…
谢谢我解决了这个问题
在Ubuntu服务器,我已经安装了一个PHP扩展。 我是这样做的:
sudo apt-get install php-mbstring
这个问题的另一个原因是PHP版本。 当我将正在运行的PHP版本更改为7.0.0时,问题已经消失。
Ubuntu 15.10
1) sudo nano /etc/php/7.0/apache2/php.ini
uncommited扩展= php_mbstring.dll
2) sudo apt-get install php7.0-mbstring
3) 重新启动apache2
以前在Windows机器上使用MAMP时遇到过这个问题。
打开MAMP开始页面并转到您当前的PHPconfiguration(phpinfo)。 检查configuration文件(php.ini)path。
我被设置为C:\ Windows,当然我没有PHP.ini文件。
将php.inipath更改为C:\ MAMP \ conf \ php5.6.8(或者您的php版本confpath),或者将php.ini复制到c:\ windows。
用Apache 2.4.17和php5.6.17安装WAMP 3后,我尝试从wampserver(托盘中的绿色图标)查看php.ini。 它没有find它。 我从php.5.6.15目录复制php.ini到apache2.4.17 \ bin \目录和phpmyadmin工作正常,不会丢失mbstring
我已经通过这种方式解决了我的问题:编辑php.ini文件:
- 将extension_dir =“ext”改为extension_dir =“D:\ php \ ext” (请写下你自己的扩展目录的完整path)
- 更改;扩展名= php_mbstring.dll到扩展名= php_mbstring.dll (删除“;”)
- 然后保存你的php.ini文件并将其复制到你的Windows目录(“C:\ Windows”)
- 重启apache服务器。
以上是我的解决scheme,希望它会为你工作。
解决了它。
我尝试了以上所有的解决scheme,但仍然无法正常工作。 我正在使用WAMP来启动mysql服务器。 当我试图用WAMP面板打开“php.ini”文件时,它说不存在,并要求我在位置“C:\ wamp \ bin \ apache \”中创build一个新的“php.ini” apache2.4.17 \ bin”中。 一旦我创build了这个新的“php.ini”文件,我find了path为“C:\ wamp \ bin \ php \ php5.6.15”的现有“php.ini”文件,并将其克隆。 然后,我将克隆粘贴到之前要求创build“php.ini”文件的path中。
希望这有助于。
我刚刚在Windows 10上安装了WAMP 3,并且遇到了这个问题。
我必须去C:\wamp64\bin\php\php7.0.0\
并将php.ini
文件复制到C:\wamp64\bin\apache\apache2.4.17\bin\
然后我重新启动WAMP,终于能够访问我的phpMyAdmin文件。
注意:这可能不是正确的方法,因为现在有2个php.ini文件。 Apache文件中可能有一个指向php.ini文件的设置,但是我还没有看到。 我会更新这个,如果我find它。
使用xampp,这将工作(php7已解压到xampp \ php目录):
在php.ini中进行以下更改:
- 不推荐(删除;)
;延长=中php_mbstring.dll
- 不推荐(删除;)
;延长= php_mysqli.dll
- 将path设置为扩展目录
extension_dir =“ext”
到完整的path,例如:
extension_dir =“C:\ xammp \ php \ ext”
另外,更改httpd-xampp.conf中的xampp-settings:
- 更改
LoadFile“C:/xampp/php/php5ts.dll”
至
LoadFile“C:/xampp/php/php7ts.dll”
- 更改
LoadModule php5_module“C:/xampp/php/php5apache2_4.dll”
至
LoadModule php7_module“C:/xampp/php/php7apache2_4.dll”
- 改变所有的外观(3次)
IfModule php5_module
至
IfModule php7_module
而已。
-
安装mbstring并重新启动你的apache:
sudo apt-get install php-mbstring sudo service apache restart
然后删除; 从你的php.ini文件中:
;extension=php_mbstring.dll
至
extension=php_mbstring.dll
如果它仍然无法正常工作..remove您的PHP设置,而不是从您的phpmyadmin删除数据库。 重新安装它。
注意:*如果你想删除所有,所有提到你需要的。
sudo apt-get remove php*
然后安装您需要的PHP版本的php和模块。 这里,PHP 7.1:
sudo apt-get install php7.1 php7.1-cli php7.1-common libapache2-mod-php7.1 php7.1-mysql php7.1-fpm php7.1-curl php7.1-gd php7.1-bz2 php7.1-mcrypt php7.1-json php7.1-tidy php7.1-mbstring php-redis php-memcached
重新启动你的Apache并检查PHP版本。
sudo service apache restart php -v
当所有这一切都完成后,执行以下命令强制启用mbstring并重新启动您的apache。
sudo phpenmod mbstring sudo service apache restart
希望能帮助到你。 它对我做了:)
奇怪的是,我注意到,WAMP使用的php.ini文件不是php目录中的文件,而是在bin目录中引用了php.ini文件…我复制了我的php.ini文件来打印\ bin \ apache \ apache2.4.17 \ bin目录,重启wamp服务,PHPMyadminclosures并运行…
在较新版本的PHP中, “extension_dir”最初并未启用 。
在php的目录下,尝试改变configuration文件的扩展名(php.ini-development – 这个文件的默认值)。 我将其更改为php.ini和phpmyadmin工作。
程序无法启动,因为您的计算机缺lessphp_mbstring.dll
。 尝试修复它。
我使用appserver到本地主机和我的服务器: C:/AppServ/www/dvd2/variables.php
Mozilla/5.0 (Windows NT 6.1; rv:33.0) Gecko/20100101 Firefox/33.0 Apache/2.2.8 (Win32) PHP/5.2.6
要在Linux上解决这个问题,你需要使用--enable-mbstring
标志重新编译你的PHP。
如果您刚刚安装了phpmyadmin软件包,但尚未重新启动apache,则可能会收到此错误消息; 尝试重新启动Apache。
请在php.ini中取消注释
;extension=php_mbstring.dll ;extension=php_exif.dll ; Must be after mbstring as it depends on it ;extension=php_mysql.dll ;extension=php_mysqli.dll
这将有助于解决。
您安装的phpadmin版本与apache版本不兼容。 安装兼容版本,你应该没问题
我最近从我的Windows 8.1操作系统从PHP 5.4.44更新到PHP 5.6.12,并得到这个phpMyAdmin缺lessmbstring错误消息。
在尝试了上述build议之后,我发现5.4.44版本的DLL扩展名都放在了PHP根目录下,而5.6.12版本放在了PHP \ ext子目录下。
所有非常好,除了不幸的是有人忘了相应地改变php.ini。 所以有两个可能的解
- 将ext子目录中的DLL扩展复制到PHP根目录或
- 编辑php.ini文件以调用ext子目录中的所有DLL扩展。
我首先select了更容易,phpMyAdmin现在工作正常。
根据您的操作系统,您可能需要安装额外的数据包,例如SLES Linux中的php5-mbstring。
我检查phpinfo()并寻找这一行:
Configuration File (php.ini) Path C:\Windows
而我复制php.ini从C:\ xampp \ php文件夹,它适用于我。
我有同样的问题,上述解决scheme不适合我。
我所做的是卸载wamp并注销Skype并重新安装了wamp。
然后它得到了工作。 我认为wamp和Skype使用的端口是一样的。
希望这个input将有所帮助。
干杯:)
我的解决scheme:从您的php目录复制一个快捷方式从您的php.ini到apache-dir。 这样你也可以在正确的地方引用1个文件。 这解决了(至less在我的情况下)的问题。
只需将php.ini文件从C:\ wamp \ bin \ apache \ apache2.4.17 \ bin复制到C:\ wamp \ bin \ apache \ apache2.4.17 \ bin,然后重新启动apache服务器即可。
我的解决scheme
我之前已经安装了x32,需要先删除然后安装x64,接收到同样的信息“ mbstring扩展名缺失,请检查你的PHPconfiguration。 ”
在php.ini中,对wamp的所有引用(如extension_dir =指向“ C:/ Program Files / Wamp / … ”)。 检查所有的path,对我来说正确的是“ C:/ Wamp64 / ”。 重新启动服务,现在没事了。
这个问题的performance
对我来说,使用WAMP 3.0.0,问题是WAMP正在寻找我的PC上以下目录中的php.ini:C:\ wamp64 \ bin \ apache \ apache2.4.17 \ bin
解
但是,没有selectPHP的默认版本(PHP 5.6.16)的文件。 通过左键单击WAMP通知图标,select“PHP”,select“Version”,然后select“7.0.0”,我更改为PHP 7.0.0。
替代scheme
在我的电脑的'C:\ wamp64 \ bin \ php'目录下,PHP 5.6.16和7.0.0都有子目录。 这两个都有php.ini文件。 另一种解决scheme是将其中一个文件复制到我的电脑上的“C:\ wamp64 \ bin \ apache \ apache2.4.17 \ bin”目录中。