如何存储 mcrypt_module_open('rijndael-256','','ofb','');在 MYSQL
Posted
技术标签:
【中文标题】如何存储 mcrypt_module_open(\'rijndael-256\',\'\',\'ofb\',\'\');在 MYSQL【英文标题】:How to store mcrypt_module_open('rijndael-256','','ofb',''); in MYSQL如何存储 mcrypt_module_open('rijndael-256','','ofb','');在 MYSQL 【发布时间】:2012-01-25 20:23:46 【问题描述】:我在将 mcrypt_module_open('rijndael-256','','ofb','');
存储在 mysql 数据库中时遇到了一点问题。
当它将加密数据插入 MySQL 数据库时,它看起来像这样˜9ÏÏd‰
。
应该是这样的
÷`¥¶Œ"¼¦q…ËoÇ
我想知道我是否必须做一些事情才能让它工作?
【问题讨论】:
【参考方案1】:您是否尝试过整理您的角色支持的表格。
字符 '÷`¥¶Œ"¼¦q...ËoÇ' 看起来像 UTF-8 或其他字符集,查找您的字符的字符集并根据您的字符集更新表排序规则
【讨论】:
【参考方案2】: 使用 blob 字段类型存储二进制数据(BLOB、VARBINARY、BINARY) 如果您还没有这样做:如果您直接在 SQL 语句中使用它们,请使用正确的方法转义您的值。甚至更好:使用查询参数/准备好的语句。 作为最后的手段,您可以使用base64_encode
或bin2hex
对数据进行编码。
如果您想在控制台或浏览器中显示二进制数据(即使是出于调试目的),也可以使用其中一种编码。否则您可能看不到实际数据,因为浏览器可能无法正确显示您的二进制文件。
【讨论】:
【参考方案3】:一般来说,像这样对二进制数据进行 base64 编码和解码可能是个好主意。见Best way to use php to encrypt and decrypt passwords?。
【讨论】:
以上是关于如何存储 mcrypt_module_open('rijndael-256','','ofb','');在 MYSQL的主要内容,如果未能解决你的问题,请参考以下文章
php请详细解释下mcrypt_module_open是干啥用的
<转载>php7以上 不支持mcrypt_module_open方法问题微信开放平台