Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Extensions > нестыковка с mcrypt


Автор: Logree 24.2.2008, 22:41
extension=php_mcrypt.dll

в папrt есть php_mcrypt.dll 

при попытке вызова пишет 
Fatal error: Call to undefined function mcrypt_module_open() in C:\www\index.php on line

в phpinfo её нет... 
что делать может скачать другую dll ?

все остальные расширения цепляет нормально...
PS Win php 5.2.0 dll'ка шла в комплекте  

Пишу так 
Код
$crypt = mcrypt_module_open('blowfish','','ecb','');
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($crypt), MCRYPT_RAND);

mcrypt_generic_init($crypt,'rfrf',$iv);

$str = mdecrypt_generic($crypt,'Z lehrj');
echo $str;


Автор: flashaa 25.2.2008, 12:42
После правки  php.ini сервер надо перезапустить. В остальном проблем не нашел. (проделал установку mcrypt у себя на винде)

Автор: gta4kv 25.2.2008, 12:51
У меня таже проблема была. в итоге забил) Рестарт - ничего не даёт.

Автор: flashaa 25.2.2008, 13:07
Почему у меня дает, у вас - нет. Наверняка правили не тот файл php.ini, который используется. Используемый файл php.ini так же можно посмотреть c помощью phpinfo();

Автор: Logree 25.2.2008, 23:03
Код

После правки  php.ini сервер надо перезапустить. 


Ну это само собой разумеется...

Код

Наверняка правили не тот файл php.ini


он у меня одинsmile

Код

У меня таже проблема была. в итоге забил) Рестарт - ничего не даёт.

а вот я попробую разобраться...

2flashaa скинте пожалуйста вашу dll'ку мне на маил

Автор: Fortop 26.2.2008, 21:49
Библиотеку брал отсюда http://www.php.net/get/php-5.2.5-Win32.zip/from/a/mirror
Твой код работает.
Посмотри при запуске сервера у тебя случаем startup errors нет? Возможно несовместимость с каким-то уже стоящим расширением

Автор: mishaSL 27.2.2008, 12:21
Logree, gta4kv, если у вас операционная система Windows, то папка с PHP должна быть с системном PATH (в параметрах среды). В случае с mcrypt среда windows должна находить файл libmcrypt.dll (который находится с папке PHP).

Автор: flashaa 27.2.2008, 16:42
mishaSL, по-моему PATH тут не при чем. Он используется для поиска самого php.ini. А все расширения лежат в extensions_dir (вроде так) и если директория с расширениями либо её настройка неверна, то даже mysql не встанет. А вообще с расширениями у авторов проблем, как мне показалось, нет.

Автор: mishaSL 27.2.2008, 17:03
Цитата(flashaa @  27.2.2008,  16:42 Найти цитируемый пост)
Он используется для поиска самого php.ini.

Не совсем так. Для некоторых расширений (к примеру curl, mysql и т.д.) нужны дополнительные библиотеки, которые должна видеть операционная система windows. Как вариант их можно скопировать в \WINDOWS\SYSTEM\ или добавить директорию с PHP в системный PATH, чтобы не копировать каждый раз.

К примеру, при установке http://ru2.php.net/curl документация гласит следующее:
Код

Note: Замечание для пользователей Win32   Для работы с этим модулем в Windows необходимо скопировать файлы libeay32.dll и ssleay32.dll  из директории DLL Win32 дистрибутива PHP в директорию SYSTEM (Нпример C:\WINNT\SYSTEM32  или C:\WINDOWS\SYSTEM)

Автор: flashaa 27.2.2008, 17:14
Пасиба, как все хитро

Автор: Logree 27.2.2008, 17:44
2mishaSL огромное спасибо всё работает...

Автор: mishaSL 27.2.2008, 17:49
Всегда пожалуйстаsmile

Автор: flashaa 27.2.2008, 18:42
mishaSL, как же я сразу не допер системные библиотеки. Сидя под линуксом совсем про них забываешь. Устанавливаются сами пакетным менеджером. Думал в винде, весь функционал расширения заключен в DLL, ан нет.

Автор: FractalizeR 8.3.2008, 13:12
Цитата(flashaa @ 27.2.2008,  18:42)
mishaSL, как же я сразу не допер системные библиотеки. Сидя под линуксом совсем про них забываешь. Устанавливаются сами пакетным менеджером. Думал в винде, весь функционал расширения заключен в DLL, ан нет.

Странно, что у вас апач при запуске не выдавал никаких ошибок при подключенном mcrypt с нехваткой библиотек. Под виндой обычно сообщения появляются о ненайденной библиотеке. Ну, или как минимум в логе апача должна была быть информация о проблеме.

Автор: flashaa 9.3.2008, 13:09
Цитата(FractalizeR @  8.3.2008,  13:12 Найти цитируемый пост)
Странно, что у вас апач при запуске не выдавал никаких ошибок при подключенном mcrypt с нехваткой библиотек. Под виндой обычно сообщения появляются о ненайденной библиотеке. Ну, или как минимум в логе апача должна была быть информация о проблеме.

Наверно не выдавал, потому что библиотеки были? Ф-ции mcrypt работали

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)