php 直接 echo BLOB 类型的值 乱码,如何解决?

efanlx 2009-02-10 03:28:48
php 直接 echo BLOB 类型的值 乱码,如何解决?

如:
??????硺獦摡獦摡

...全文
304 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
tfxg 2009-05-25
  • 打赏
  • 举报
回复
$blob_id=@ibase_blob_open("$row[REMARK]");
$string =@ibase_blob_get($blob_id,10000);
要經過兩步處理
CN2007 2009-02-22
  • 打赏
  • 举报
回复
编码要一致
magicone 2009-02-22
  • 打赏
  • 举报
回复
phpmyadmin里是乱码吗
zcs198404 2009-02-22
  • 打赏
  • 举报
回复
文档的编码不一致,记录数据时的编码和显示数据的编码要一致
fxs_2008 2009-02-21
  • 打赏
  • 举报
回复
先看看的你的数据是如何存入的,存入前作了哪些处理?
总哈哈 2009-02-21
  • 打赏
  • 举报
回复
你可以建一个新的utf-8文本,然后把你目前的代码复制进去试试,这方法挺管用的!
应该网 2009-02-21
  • 打赏
  • 举报
回复
要看看你数据库的版本、编码。

都用utf-8编码应该不会出现这样的情况。

不清楚的话就下个phpmyadmin,查看下表的编码、记录是否乱码。
he2005 2009-02-20
  • 打赏
  • 举报
回复
怎么可以用这样的数据类型 存文本呢

LZ 你在想什么
zgycsmb 2009-02-13
  • 打赏
  • 举报
回复
数据库连接器有问题,
换个高版本的,
efanlx 2009-02-11
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 froole 的回复:]
blob里面被保存的是2进制数据,
如果里面是普通的字符串数据,用通常的方法是无法显示的,需要转换。

用PHP直接操作2…
[/Quote]

按你给的代码的提示,还没有解决,继续等待。
直接导出txt文件,数据正常,没有乱码。
FavoritesMeteor 2009-02-11
  • 打赏
  • 举报
回复
统一编码就好了,PHP技术交流QQ群:50874932
yctin 2009-02-10
  • 打赏
  • 举报
回复
存文字一般都用 TEXT
BLOB 用来存档案
海诗美妆 2009-02-10
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 efanlx 的回复:]
OwnerName OwnerSN  RecordSN        Title            Content          HasShared      DateTime
苏顺莉        11        1          请输入标题 ??????摳晡摳晡摳晡摳晡獡獤摡獦摡f    0    2009-02-09 11:16:12

content 是BLOB类型,就乱码,其它的正常。
[/Quote]
blob里面被保存的是2进制数据,
如果里面是普通的字符串数据,用通常的方法是无法显示的,需要转换。

用PHP直接操作2进制文本数据,很少见,只知道pack可以复原数据,但是具体没用过,lz只能自己查查了。

给个代码,lz参考一下
$base = "日本語の文字列です。ちゃんと変換できるかな?";

echo $base."<br>";

$bite16 = bin2hex($base);


echo "16進数に変換<br>";


echo $bite16."<br>";

$return = pack("H*" ,$bite16);


echo "16進数を日本語にに変換<br>";


echo $return;
efanlx 2009-02-10
  • 打赏
  • 举报
回复
OwnerName OwnerSN RecordSN Title Content HasShared DateTime
苏顺莉 11 1 请输入标题 ??????摳晡摳晡摳晡摳晡獡獤摡獦摡f 0 2009-02-09 11:16:12

content 是BLOB类型,就乱码,其它的正常。
efanlx 2009-02-10
  • 打赏
  • 举报
回复
在查询前,加了mysql_query("set names utf8");一样是乱码.

sese53 2009-02-10
  • 打赏
  • 举报
回复
朋友,你描述问题没有描述很清楚。
你可以mysql_query("set names XXX");用这样的代码来换成跟数据库一样的代码啊。
efanlx 2009-02-10
  • 打赏
  • 举报
回复
在线等,找google,baidu都还没有解决
efanlx 2009-02-10
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 CuTe_CuBe 的回复:]
BLOB保存的是二进制形式的数据,你放了什么?
[/Quote]

二进制的数据如何转换呀?
efanlx 2009-02-10
  • 打赏
  • 举报
回复
存了的内存是“请输入日期内容”,echo成了“??????硺獦摡獦摡”

header("Content-type: text/xml; charset=utf-8");
header("Content-type: text/xml; charset=gb2312");
都试过了,还是一样乱码。
penglewen 2009-02-10
  • 打赏
  • 举报
回复
header("Content-type: text/xml; charset=utf-8");
第一句加上,如果是gb2312的,就改成对应的字符.
加载更多回复(3)

20,359

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧