[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Проблема с кодировкой (mcrypt)
Гость_Владимир
Здравствуйте!

Я пытаюсь зашифровать строку c помощью модуля mcrypt.

<?php
define('CRYPT_KEY','dPfsdfF95bfG4Wmls9J');
function code($source) {
$key = CRYPT_KEY;
$s = "";

// Открывает модуль
$td = mcrypt_module_open('des', '', 'ecb', '');
$key = substr($key, 0, mcrypt_enc_get_key_size($td));
$iv_size = mcrypt_enc_get_iv_size($td);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);

// Инициализирует дескриптор шифрования и шифруем
if (mcrypt_generic_init($td, $key, $iv) != -1) {
$s = mcrypt_generic($td, $source);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
}
return $s;
}

function decode($source) {
$key = CRYPT_KEY;
$s = "";

// Открывает модуль
$td = mcrypt_module_open('des', '', 'ecb', '');
$key = substr($key, 0, mcrypt_enc_get_key_size($td));
$iv_size = mcrypt_enc_get_iv_size($td);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);

// Инициализирует дескриптор шифрования и дешифруем
if (mcrypt_generic_init($td, $key, $iv) != -1) {
$s = mdecrypt_generic($td, $source);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
}
return $s;
}

$string = "dddfdf asdasd adasdasda aa23ER ASDSDADA FSADASDSADASD";
$code = code($string);
$decode = decode($code);
echo trim($decode);
?>



Если я вывожу $code, то получаю:
�B�+�]1/�St�I��l��� �*�n6M.2:����y�ױ���&# 65533;1|��8В�B

Если пытаюсь записать в БД (строка типа TEXT в кодировке utf8_general_ci), то получаю:


Кодировка файла в UTF-8 (без BOM), пытался вставить header с кодировкой utf-8 - тот же результат.

В чём может быть проблема? Помогите пожалуйста!
Код брал здесь: http://ekimoff.ru/316/
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.