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扩展= p​​hp_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文件:

  1. extension_dir =“ext”改为extension_dir =“D:\ php \ ext” (请写下你自己的扩展目录的完整path)
  2. 更改;扩展名= php_mbstring.dll扩展名= php_mbstring.dll (删除“;”)
  3. 然后保存你的php.ini文件并将其复制到你的Windows目录(“C:\ Windows”)
  4. 重启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中进行以下更改:

  1. 不推荐(删除;)

;延长=中php_mbstring.dll

  1. 不推荐(删除;)

;延长= php_mysqli.dll

  1. 将path设置为扩展目录

extension_dir =“ext”

到完整的path,例如:

extension_dir =“C:\ xammp \ php \ ext”

另外,更改httpd-xampp.conf中的xampp-settings:

  1. 更改

LoadFile“C:/xampp/php/php5ts.dll”

LoadFile“C:/xampp/php/php7ts.dll”

  1. 更改

LoadModule php5_module“C:/xampp/php/php5apache2_4.dll”

LoadModule php7_module“C:/xampp/php/php7apache2_4.dll”

  1. 改变所有的外观(3次)

IfModule php5_module

IfModule php7_module

而已。

  1. 安装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。 所以有两个可能的解

  1. 将ext子目录中的DLL扩展复制到PHP根目录或
  2. 编辑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”目录中。