我使用MCRYPT加密敏感数据并将其保存到数据库中。加密数据如下所示(加密数据上方的非加密数据)
然后像往常一样在文本字段utf8_unicode_ci中插入MySQL PDO数据库,但结果大部分时间都是空的。有时它只保存第一个字符。那么如何将加密值保存到数据库中呢?
$stmt=$db->prepare("insert into TABLE (myData) VALUES (:enc) ");
$stmt->bindParam(':enc',$encrypted);
$stmt->execute();
答案 0 :(得分:1)
另外编码base64
加密后编码
base64_encode($encrypted)
解密前解码
base64_decode($encrypted)
答案 1 :(得分:0)
你从pdo得到一个例外吗?
有了这些小信息我猜你想把数据保存到varchar字段中。
您可能需要将varchar字段更改为varbinary字段。