Ошибка mbstring phpMyAdmin

Всякий раз, когда я пытаюсь войти в свой phpMyAdmin, он выдает такую ​​ошибку:

The mbstring extension is missing. Please check your PHP configuration.

Я искал в Интернете исправление, но все, что я нашел, - это ошибки, похожие на мои, но не такие, или точно такие же, но исправления не было.

Я тоже использую Windows.


person user1930852    schedule 03.09.2013    source источник
comment
Действительно? Нет. Решение, данное в вопросе Mac, заключалось в том, чтобы установить его с помощью команды Mac, sudo port install php5-mbstring. Я не могу этого сделать в окнах.   -  person user1930852    schedule 03.09.2013
comment
Вы используете окна? Как вы установили PHP? Есть несколько пакетов, таких как Wamp server, которые позволяют вам переключать, какие расширения будут включены и доступны для ваших приложений.   -  person Leprosy    schedule 03.09.2013
comment
abyssunderground.co.uk   -  person user1930852    schedule 03.09.2013
comment
Я использую веб-сервер Abyss для запуска своего веб-сайта, я использовал PHP5 с того веб-сайта, который я только что отправил.   -  person user1930852    schedule 03.09.2013
comment
У меня PHP5, MySQL и PhpMyAdmin. Вот и все. Есть ли способ исправить ошибку?   -  person user1930852    schedule 03.09.2013
comment
Вы используете очень старое серверное программное обеспечение, которое необходимо обновить. Какую версию PHP вы используете? Если версия ниже 5.3, у вас проблемы.   -  person Sven    schedule 03.09.2013
comment
Я использую PHP 5.2.0, но у меня такая же ошибка с 5.5.3.   -  person user1930852    schedule 03.09.2013
comment
Пользователи Ubuntu php7 apt apt-get install php7.0-mbstring. Не забудьте перезапустить Apache. systemctl restart apache2. php-mbstring тоже работает   -  person peterchaula    schedule 29.05.2017


Ответы (31)


В Centos я установил расширение php. Я сделал это с помощью:

yum install php-mbstring
person Arjang    schedule 12.12.2013
comment
sudo service httpd перезапуск - person Uahmed; 28.09.2015
comment
под сервером Ubuntu команда будет sudo apt-get install php-mbstring - person baywet; 26.05.2016
comment
Примечание: php-mbstring содержит общие зависимости php, поэтому может возникнуть ошибка, если вы используете php-common и попытаетесь установить php-mbstring. По крайней мере, со мной случилось. - person fungusanthrax; 05.03.2017

Раньше у меня тоже была такая же проблема. Я попытался заменить файл .dll, но безрезультатно. После некоторой отладки я нашел решение.

У меня было это в моем php.ini файле:

extension_dir = "ext"

И я получаю mbstring extension missing ошибку. Поэтому я попытался указать полный путь к каталогу расширений, и у меня это сработало. нравиться:

extension_dir = "C:\php\ext"

Надеюсь, это поможет.

Ваше здоровье,

person PHP Mentor    schedule 17.09.2013
comment
Спасибо за ваш ответ. Это был единственный способ, которым это сработало и для меня - person sabah; 16.10.2013
comment
Установка абсолютного пути к каталогу расширений PHP всегда будет работать, но для большей переносимости это также сработало для меня: ..\php\ext - в XAMPP 5.6 - person jave.web; 21.09.2015

проверьте свой файл php.ini в корневом каталоге установки php. В части конфигурации расширений вы должны найти:

;extension=php_mbstring.dll

удалите ведущий ';' раскомментировать и включить расширение, чтобы оно выглядело так:

extension=php_mbstring.dll

перезапустите свой apache, и он должен работать.

Изменить: я только что прочитал, что вы уже используете веб-хостинг. Есть ли у вашего веб-хоста интерфейс, в котором вы можете устанавливать переменные php и т. Д.? Или файл .ini, который можно редактировать?

В противном случае вы можете быть вынуждены поговорить с веб-хостингом и попросить их включить это конкретное расширение.

person cptnk    schedule 03.09.2013
comment
Я могу ошибаться, но я почти уверен, что вам нужно перезапустить apache. Есть ли у вас возможность получить доступ к серверу по ssh? В таком случае вам необходимо перезапустить его # /etc/init.d/apache2 restart. - person cptnk; 03.09.2013
comment
О, я только что узнал, почему это не работает. В моей папке нет mbstring.dll. Мне нужно его скачать? Я нигде не могу найти его. - person user1930852; 03.09.2013
comment
Он должен находиться в каталоге \ ext \. И да, вам нужно это получить. Обычно вам нужно скомпилировать php или загрузить его уже скомпилированным. Я сомневаюсь, что простое добавление dll решит проблему, но можно попробовать. file-upload.net/download-8040628/php_mbstring.dll.html Надеюсь, я не нарушаю здесь никаких авторских прав, если это так, пожалуйста, сообщите мне, и я удалю эту ссылку для скачивания. Если добавление dll не помогает, вам определенно следует использовать windows.php.net/download для загрузки php. - person cptnk; 03.09.2013
comment
У меня есть файл, извините за поздний ответ, у меня школа и домашнее задание. Я получил файл, но все равно получаю сообщение об ошибке. Должно быть что-то не так, но я не могу понять что .. - person user1930852; 04.09.2013

Мой случай был таким

Как ни странно, я заметил, что файл php.ini, который использовал WAMP, не был тем файлом в каталоге php, а скорее ссылался на файл php.ini в каталоге bin ... Я скопировал свой файл php.ini в wamp \ bin \ apache \ apache2.4.17 \ bin, перезапустил службы wamp, и PHPMyadmin был выключен и работал ...

Спасибо решил проблему

person user2651478    schedule 28.03.2016
comment
Я борюсь с этим уже пару дней, и это решило его. Огромное спасибо! - person Dylan Caudill; 28.05.2016
comment
Это решение тоже решает мою проблему. благодарю вас! Я использую wamp 3.0.0. - person Sujeet malvi; 28.07.2016

В Ubuntu Server я установил расширение php. Я сделал это с помощью:

sudo apt-get install php-mbstring
person W.Doch    schedule 02.05.2016
comment
У меня был php5. После этого обновлен php5 до php7, отображается эта ошибка. Я выполнил эту команду, и проблема исчезла. убунту 14.04 - person Ali; 06.08.2016
comment
Как предлагает @Ali, это необходимо после обновления до PHP 7, поскольку расширение mbstring для PHP 7 находится в другом пакете (например, php7.1-mbstring для PHP 7.1). - person Mustafa Çağatay Tulun; 13.05.2017

Еще одна причина этой проблемы - версия Php. Когда я изменил текущую версию PHP на 7.0.0, проблема исчезла.

введите описание изображения здесь

person Fatih Çelik    schedule 16.05.2016
comment
Превосходно! Спасибо, Фатих. - person Steve; 07.06.2016
comment
Сработало как шарм, спасибо! Я должен упомянуть, что я также изменил путь к папке ext на extension_dir = C: /wamp64/bin/php/php7.0.0/ext/ Просто убедитесь, что это соответствует пути в вашей установке WAMP. - person Liran H; 26.06.2016
comment
Я также добавлю, что когда я изменил версию PHP обратно на версию, в которой ini был поврежден, теперь это было исправлено. Странный. - person Nick Pickering; 31.07.2016
comment
Путь для расширения был правильным. Тем не менее я получил ошибку. Затем я изменил версию, и проблема исчезла! Спасибо @Fatih elik - person user1896653; 05.09.2016

Ubuntu 15.10

1) sudo nano /etc/php/7.0/apache2/php.ini

незавершенное расширение = php_mbstring.dll

2) sudo apt-get install php7.0-mbstring

3) перезапустите apache2

person Vital Rulinski    schedule 05.04.2016

  1. установите mbstring и перезапустите apache:

    sudo apt-get install php-mbstring
    sudo service apache restart
    

затем удалите; из вашего файла php.ini:

;extension=php_mbstring.dll

to

extension=php_mbstring.dll

Если это все еще не работает ... удалите настройку php, не удаляя базы данных из вашего phpmyadmin. Переустановите его.

NB: * если вы хотите удалить все, все упомяните тот, который вам нужен.

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

Надеюсь, это поможет. Мне это понравилось :)

person Annapurna    schedule 06.07.2017
comment
Работал у меня. пришлось переустановить и phpmyadmin :) - person Deval Khandelwal; 16.07.2017

Используя xampp, это будет работать (php7 был извлечен в каталог xampp \ php):

Внесите следующие изменения в php.ini:

  1. не рекомендовать (удалить;)

; extension = php_mbstring.dll

  1. не рекомендовать (удалить;)

; extension = php_mysqli.dll

  1. установить путь к каталогу расширения

extension_dir = "ext"

на полный путь, например:

extension_dir = "C: \ xammp \ php \ ext"

Дополнительно измените xampp-settings в httpd-xampp.conf:

  1. изменение

LoadFile "C: /xampp/php/php5ts.dll"

to

LoadFile "C: /xampp/php/php7ts.dll"

  1. изменение

LoadModule php5_module "C: /xampp/php/php5apache2_4.dll"

to

LoadModule php7_module "C: /xampp/php/php7apache2_4.dll"

  1. изменить весь внешний вид (3 раза)

IfModule php5_module

to

IfModule php7_module

Вот и все.

person user3759454    schedule 20.10.2016

Раньше у меня была эта проблема с MAMP на машине Windows.

Откройте стартовую страницу MAMP и перейдите к вашей текущей конфигурации PHP (phpinfo). Проверьте путь к файлу конфигурации (php.ini).

Мой был установлен в C: \ Windows, где, конечно, у меня не было файла PHP.ini.

Либо измените путь php.ini на C: \ MAMP \ conf \ php5.6.8 (или путь conf версии php), либо просто скопируйте php.ini в c: \ windows.

person HotRod    schedule 08.06.2015

после установки WAMP 3 с Apache 2.4.17 и php5.6.17 я попытался посмотреть php.ini с сервера wampserver (зеленый значок в трее). Не нашел. Я скопировал php.ini из каталога php.5.6.15 в каталог apache2.4.17 \ bin \, и phpmyadmin работал нормально, не пропуская mbstring

person Michel    schedule 22.11.2015

Я решил свою проблему следующим образом: Отредактируйте файл php.ini:

  1. замените extension_dir = "ext" на extension_dir = "D: \ php \ ext" (укажите свой полный путь к каталогу расширений)
  2. замените ; extension = php_mbstring.dll на extension = php_mbstring.dll (удалите ";")
  3. Затем просто сохраните файл php.ini и скопируйте его в ваш каталог Windows。 («C: \ Windows»)
  4. перезапустите сервер apache。

Вышеупомянутое мое решение, надеюсь, оно сработает для вас.

person hijack    schedule 19.12.2015

Решил это.

Я попробовал все вышеперечисленные решения, но они все равно не сработали. В настоящее время я использую WAMP для запуска сервера mysql. Когда я попытался открыть файл «php.ini» с помощью панели WAMP, он сказал, что его не существует, и попросил меня создать новый «php.ini» в месте «C: \ wamp \ bin \ apache \ apache2.4.17 \ bin ". Как только я создал этот новый файл «php.ini», я обнаружил существующий файл «php.ini», который находился по пути «C: \ wamp \ bin \ php \ php5.6.15», и клонировал его. Затем я вставил клон в предыдущий путь, где меня попросили создать файл «php.ini».

Надеюсь, это помогло.

person Dan the Man    schedule 06.03.2016

Я только что установил WAMP 3 в Windows 10 и столкнулся с этой проблемой.

Пришлось зайти в 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, но я этого еще не видел. Я обновлю это, если найду.

person Travis Heeter    schedule 09.04.2016

Как ни странно, я заметил, что файл php.ini, который использовал WAMP, не был тем файлом в каталоге php, а скорее ссылался на файл php.ini в каталоге bin ... Я скопировал свой файл php.ini в wamp \ bin \ apache \ apache2.4.17 \ bin, перезапустил службы wamp, и PHPMyadmin был выключен и работал ...

person PGallagher    schedule 19.02.2016

В более новых версиях PHP "extension_dir" изначально не включен.

person Froschkoenig84    schedule 12.04.2016

В каталоге php попробуйте изменить расширение файла конфигурации (php.ini-development - значение этого файла по умолчанию). Я изменил его на php.ini, и phpmyadmin заработал.

person user2129341    schedule 12.11.2013

Программа не может запуститься, потому что php_mbstring.dll отсутствует на вашем компьютере. Попробуй исправить.

Я использую сервер приложений для локального хоста и своего сервера: 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
person user4334447    schedule 07.12.2014

Чтобы решить эту проблему в Linux, вам необходимо перекомпилировать ваш PHP с флагом --enable-mbstring.

person user4563664    schedule 13.02.2015

Это сообщение об ошибке может появиться, если вы только что установили пакет phpmyadmin, но еще не перезапустили apache; попробуйте перезапустить apache.

person Joey Rich    schedule 10.04.2015

Раскомментируйте следующие строки на 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

Это поможет решить.

person Murugaiyan Shanmugam    schedule 08.05.2015

Установленная вами версия phpadmin несовместима с версией apache. Установите совместимую версию, и все будет в порядке

person Nitesh    schedule 30.08.2015
comment
проверьте дату вопроса, не знаю, актуален ли он - person TommySM; 30.08.2015

Недавно я обновился с PHP 5.4.44 до PHP 5.6.12 в своей ОС Windows 8.1 и получил это сообщение об ошибке mbstring, отсутствующее в phpMyAdmin.

Попробовав приведенные выше предложения, ни одно из которых у меня не сработало, я обнаружил, что версия 5.4.44 помещает расширения DLL в корневой каталог PHP, тогда как версия 5.6.12 помещает их в подкаталог PHP \ ext.
Все очень хорошо, за исключением, к сожалению, кто-то забыл соответственно изменить php.ini. Итак, два возможных решения:

  1. Скопируйте расширения DLL из подкаталога ext в корневой каталог PHP или
  2. Отредактируйте файл php.ini, чтобы вызывать все расширения DLL из подкаталога ext.

Сначала я выбрал более простой вариант, и теперь phpMyAdmin работает нормально.

person DrT    schedule 03.09.2015

В зависимости от вашей ОС вам может потребоваться установка дополнительных пакетов, например php5-mbstring в SLES Linux.

person lilalinux    schedule 09.11.2015

Я проверяю phpinfo () и ищу эту строку:

Configuration File (php.ini) Path          C:\Windows

И я копирую php.ini из C: \ xampp \ php в папку, и у меня это работает.

person ket    schedule 10.01.2016

У меня была такая же проблема, вышеуказанные решения не помогли мне.

Я удалил wamp, вышел из Skype и переустановил wamp.

Потом это сработало. Я думаю, что порт, используемый wamp и Skype, такой же.

Надеюсь, этот вклад поможет.

Ваше здоровье :)

person Muhamed Riyas M    schedule 03.02.2016

мое решение: скопируйте ярлык из вашего php.ini из вашего php-каталога в apache-dir. Таким образом, вы тоже разместите 1 файл в нужном месте. Это решило (по крайней мере, в моем случае) проблему.

person user6071010    schedule 16.03.2016

просто скопируйте файл php.ini из C: \ wamp \ bin \ apache \ apache2.4.17 \ bin в C: \ wamp \ bin \ apache \ apache2.4.17 \ bin, а затем снова перезапустите сервер apache .. он будет работать нормально.

person Masum    schedule 17.04.2016

Мое решение:

У меня раньше был установлен wamp x32, мне нужно было удалить, а затем установить x64, получая то же сообщение «Отсутствует расширение mbstring. Проверьте конфигурацию PHP.».

В php.ini все ссылки на wamp, такие как extension_dir =, указывали на «C: / Program Files / Wamp / ...». Проверьте все пути, правильным для меня является "C: / Wamp64 /". Перезапустите сервисы, и теперь все в порядке.

person Daniel Lemes    schedule 02.05.2016

В процессе установки файл конфигурации Apache phpMyAdmin добавляется в каталог / etc / apache2 / conf-enabled /, где он читается автоматически. Единственное, что вам нужно сделать, это явно включить расширение PHP mbstring, потому что иногда вы забываете включить режим mbstring, поэтому просто введите команду ниже, чтобы включить режим mbstring ...

   sudo phpenmod mbstring

После этого перезапустите Apache, чтобы изменения были распознаны:

sudo systemctl restart apache2
person Arslan Maqbool    schedule 27.11.2020

Мое проявление этой проблемы

Для меня, используя WAMP 3.0.0, проблема заключалась в том, что WAMP искал php.ini в следующем каталоге на моем ПК: C: \ wamp64 \ bin \ apache \ apache2.4.17 \ bin

Решение

Однако там не было файла для выбранной по умолчанию версии PHP (PHP 5.6.16). Я перешел на PHP 7.0.0, щелкнув левой кнопкой мыши значок уведомления WAMP, выбрав «PHP», выбрав «Версия» и выбрав «7.0.0».

Альтернативное решение

В каталоге «C: \ wamp64 \ bin \ php» на моем ПК были подкаталоги для PHP 5.6.16 и 7.0.0. В обоих из них были файлы php.ini. Альтернативным решением было бы скопировать один из этих файлов в каталог «C: \ wamp64 \ bin \ apache \ apache2.4.17 \ bin» на моем ПК.

person Joe Flack    schedule 29.05.2016
comment
Альтернативное решение не является решением, пожалуйста, не используйте его - person RiggsFolly; 06.12.2017
comment
Произошло ли что-то неожиданное / неправильное при попытке этого решения? - person Joe Flack; 08.12.2017
comment
Перестройку символической ссылки php.ini можно не выполнить, щелкнув номер версии PHP. Даже щелчок по текущей выбранной версии восстановит символические ссылки. - person RiggsFolly; 10.12.2017