mysql — php Aes_Encrypt Фатальная ошибка

Я вставляю значения в базу данных, но мне нужно зашифровать пароль, а затем вставить в него специальные символы. Я использую базу данных MySQL и кодирование выполняется в обычной программе PHP.

PHP PROGRAM$mysecretkey = 'd5k8b6q3';
$password=(AES_ENCRYPT('$v4','$mysecretkey')); // problem is here in encryption
$q="insert into customers (name,username,email,password) values('$v1','$v2','$v3','$password')";

$s= mysql_query($q);

if(!$s)
{
$r["re"]="Inserting problem in database";
print(json_encode($r));
}
else
{
$r["re"]="Record inserted successfully";
}

Но когда я выполняю код, а не шифрую его, я получаю ошибку

Fatal error: Call to undefined function AES_ENCRYPT() in ..../checking.php on line 5

Как решить эту проблему и другие подробности — это поле пароля в базе данных varchar, и я получаю данные из переменной POST v1, v2, v3, v4, и тестовый ключ добавлен в приведенный выше код.

когда я даю пароль как "test123" после шифрования AES данные должны быть вставлены в это "÷A5jèŸ2A1::h "

Спасибо за помощь и время друзья …….. Пожалуйста, расскажите, как решить эту проблему

0

Решение

попробуйте как ниже (я думаю, что это функция mysql, а не php, так что используйте прямой в запросе)

$q="insert into customers (name,username,email,password) values('$v1','$v2','$v3',AES_ENCRYPT('".$v4."','".$mysecretkey."'))";

или же

$q="insert into customers (name,username,email,password) values('$v1','$v2','$v3',AES_ENCRYPT('$v4','$mysecretkey'))";

для большего :- http://www.w3resource.com/mysql/encryption-and-compression-functions/aes_encrypt%28%29.php

2

Другие решения

Вы можете попробовать больше похож на ваш подход, как

mysql_query («SET @password = AES_ENCRYPT (‘». $ v4. «‘, ‘». $ mysecretkey. «‘)»);

$ q = «вставить в значения клиентов (имя, имя пользователя, адрес электронной почты, пароль) (‘$ v1’, ‘$ v2’, ‘$ v3’, @ пароль)»;

0

По вопросам рекламы [email protected]