免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2599 | 回复: 1
打印 上一主题 下一主题

求教:关于文件保存格式的问题。(UTF-8、ANSI) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-05-19 13:05 |只看该作者 |倒序浏览
系统:$win2K ad sever
         apache 2.0.49
         php 5.0
         mysql 5.0.0 alpha-nt
客户端:$win2k ad server
          IE 6.0

//引用文件 $conn=mysql_connect("localhost","root","";
//都引用同一个文件。
//部分上传表单。保存格式使用UTF-8。

//.....
<meta http-equiv="content-type" content='text/html charset=utf-8">;
//.....
<form name="form1" method="post" enctype="multipart/form-data" action="action/upload.php">;
<input type="file" value="浏览" size="30" name="file">;
<input type="submit" value="确定">;
</form>;
//.....

部分处理代码:保存格式使用UTF-8
$file=$_FILES['file'];
copy($file['tmp_name'],"tmp.tmp"];
$fo=fopen("tmp.tmp","rb";
$data=addslashes(fread($fo,filesize("tmp.tmp"));
$name=$file['name'];
$type=$file['type'];
$sql="INSERT INTO `test`.`icons`(`data`,`name`,`type`) VALUES(\"$data\",\"$name\",\"$type\";
fclose($fo);

//表 icons 的 data 列 类型为 longblob;
//保存一切正常。

//显示代码

$id=$_GET['id'];
$sql="SELECT * FROM `test`.`icons` WHERE id=$id";
$query=mysql_query($sql,$conn);
$row=mysql_fetch_array($query);
$type=$row['type'];
$data=$row['data'];
header("Content-typetype);
echo $data;

//

上面的显示代码如果保存成  ANSI 格式,则一切正常。但如果保存成UTF-8 格式,则不能显示。错误有两个,一个是提示 HEADER 已经被修改。
另一个错误提示是 图片不能显示。(估计可能是头文件错误造成)

apache 的配置文件 httpd.ini 配置默认字符为 GB2312 (因为有其他页面在这里。所以不能修改。其他页面没有指定字符集)
php 配置文件 php.ini 配置文件 默认字符集 没有使用。估计是 iso-8859-1
mysql 配置文件 默认字符集 没有使用。

搞不清楚的是,为什么 显示文件保存成 utf-8 格式就不能正常显示呢。
而保存成 ansi 格式则可以。(其他文字数据不存在这个问题)

论坛徽章:
0
2 [报告]
发表于 2004-05-19 22:07 |只看该作者

求教:关于文件保存格式的问题。(UTF-8、ANSI)

顶上来。别掉下去
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP