Apache/2.4.23 (Win64) PHP/7.1.0PHPMYADMIN ошибка Mcrypt на PHP7.1
PhpMyAdmin: 4.6.5.2
ошибки Изображение:
Любая идея ?
Apache/2.4.23 (Win64) PHP/7.1.0PHPMYADMIN ошибка Mcrypt на PHP7.1
PhpMyAdmin: 4.6.5.2
ошибки Изображение:
Любая идея ?
в php.ini error_reporting = E_ALL & ~ E_DEPRECATED
Если не работает, то есть, жесткий метод - изменение кода PhpMyAdmin. set_error_handler в phpMyadmin не учитывает error_reporting.
Чтобы исключить E_DEPRECATED, в ../phpMyadmin/libraties/ErrorHandler.php
изменение этого метода
public function handleError($errno, $errstr, $errfile, $errline)
{
if (error_reporting() == 0 || $ Errno == E_DEPRECATED) { // added – $errno == E_DEPRECATED
return;
}
$this->addError($errstr, $errno, $errfile, $errline, true);
}
Это была проблема, связанная с совместимостью такой новой PHP версии, технически с library function что phpMyAdmin использует для различных функций шифрования.
The problem was fixed в PhpMyAdmin и будет частью следующего выпуска (который будет PhpMyAdmin 4.6.6)
Просто, чтобы добавить к ответу Алекса, код имеет опечатку, что делает его недействительным, он должен выглядеть следующим образом :
public function handleError($errno, $errstr, $errfile, $errline)
{
if (error_reporting() == 0 || $errno == E_DEPRECATED) { // added – $errno == E_DEPRECATED
return;
}
$this->addError($errstr, $errno, $errfile, $errline, true);
}
стоит отметить - это решение работает, если изменение настроек error_reporting в php.ini не Работа. –
Скопируйте и вставьте сообщение об ошибке. Таким образом, читать гораздо легче. Это также делает ваш вопрос полным, даже если эта ссылка становится недействительной. Другие могут сделать поиск в Интернете сообщения об ошибке и найти ваш вопрос и, надеюсь, ответы здесь. Вы также можете включить то, что вы сделали, чтобы произвести эту ошибку. – Robert
Функция mcrypt_list_algorithms() устарела и mcrypt_module_open() устарела –
Лучше всего не использовать mcrypt, она оставалась без изменений уже почти десять лет. Поэтому он устарел и будет удален из ядра и в PECL в PHP 7.2. Он не поддерживает стандартное дополнение PKCS # 7 (née PKCS # 5), только нестандартное нулевое заполнение, которое нельзя даже использовать с двоичными данными. В mcrypt есть много выдающихся [ошибок] (https://sourceforge.net/p/mcrypt/bugs/), относящихся к 2003 году. Вместо этого подумайте об использовании [defuse] (https://github.com/defuse/php-encryption) или [RNCryptor] (https://github.com/RNCryptor), они обеспечивают полное решение, поддерживаются и верны. – zaph