Я видел, что это попросил несколько раз, но не совсем как я собираюсь спросить это здесь ... Надеюсь, это нормально с вами, ребята.
В основном у меня есть этот скрипт, который работает нормально, и будет распечатать мой результат без сцепки:
$algorithm = MCRYPT_BLOWFISH;
$mode = MCRYPT_MODE_CFB;
$iv = mcrypt_create_iv(mcrypt_get_iv_size($algorithm, $mode), MCRYPT_DEV_URANDOM);
$key = 'Wassup';
$data = 'I am a guy';
$enc_data = rtrim(mcrypt_encrypt($algorithm,$key,$data,$mode,$iv));
$plain_text = base64_encode($enc_data);
echo $plain_text . "\n";
// OUTPUTS: 6m3D5qSrfz3w6pKuuybs
$enc_data = base64_decode($plain_text);
$decoded = mcrypt_decrypt($algorithm,$key,$enc_data,$mode,$iv);
echo $decoded;
// OUTPUTS: I am a guy
Это идеально. Теперь ... вместо того, чтобы просто мгновенно выводим то, что я вставил, я пытаюсь сохранить эту информацию в моей базе данных, чтобы быть расшифрован позже.
Я могу видеть зашифрованную строку штрафа в моем строке таблицы: 6M3D5QSRFZ3W6PKUUYBS. Итак, я уверен, что это происходит просто хорошо ..
и когда я запрашиваю, это выглядит так же, Но теперь, когда я декодирую и расшифрую, я получаю что-то вроде: ýä / $ íñët05883700
Поле таблицы устанавливается в виде Varchar (255) utf8_general_ci. Это где проблема?
-