Потому что я не функционирует правильно функция AES_DECRYPT в php?

encriptado ввод в mysql и сейчас я хочу desencriptarla. Что у меня есть плохо здесь?

key я считаю ее определенной в переменной.

$result = mysqli_query($conn,"SELECT AES_DECRYPT(nombre,'$key') FROM main WHERE nombre='$nombre'");

Я encriptando данные используя:

$sql = "INSERT INTO main (nombre, secondName) VALUES (AES_ENCRYPT('$nombre','$key'), AES_ENCRYPT('$secondName','$key'))";
2
задан 11.04.2016, 17:03
2 ответа

query возвращает тебя совсем не, потому что ты ищешь, что я назвал, будьте равен в $nombre и как имя ты это сохранял криптографию, так как он не будет совпадать. Ты должен шифровать стоимость, которую нужно сравнивать в WHERE:

SELECT AES_DECRYPT(nombre,'$key') FROM main WHERE nombre=AES_ENCRYPT($nombre,'$key')
1
ответ дан 24.11.2019, 14:36

Я понимаю, что $nombre - стоимость encriptado

$result = mysqli_query($conn,"SELECT AES_DECRYPT(nombre,'$key') FROM main WHERE nombre='$nombre'");

, Смоги состоять в том, чтобы ты был должен использовать функцию CAST , твой клиент SQL может состоять в том, чтобы у него были проблемы, если ты это не используешь

$result = mysqli_query($conn,"SELECT CAST(AES_DECRYPT(nombre,'$key')) AS CHAR(50) FROM main WHERE nombre='$nombre'");

Будучи insert:

$sql = "INSERT INTO main (nombre, secondName) VALUES (CAST(AES_ENCRYPT('$nombre','$key')) AS CHAR(20), CAST(AES_ENCRYPT('$secondName','$key')) AS CHAR(40))";

Использует CAST в funciГіn типа колонны или переменной, которую ты считал бы очевидной.

0
ответ дан 24.11.2019, 14:36