php 上傳文件大小變化,高分求解!

fzarrow 2006-06-27 03:11:11
<form method="post" name="Form1" enctype="multipart/form-data">
<input type='file' name="Up">
<input type='submit' name='Upload' value="upload">
</form>

上传图形文件,发现图片显示异常.发现文件大小发生变化.
后来上传 zip 文件,大小也发生变化.
估计是由于 binary 和 ascii 的方式差异.但是 html 的上传可以指定这个方式吗??

同样的代码在其它 server 上ok,只在一台 server 上出现.

不知道是什么原因?
...全文
268 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lantersen 2006-11-02
看下echo $_FILES['Up']['error'];
错误信息说明
从 PHP 4.2.0 开始,PHP 将随文件信息数组一起返回一个对应的错误代码。该代码可以在文件上传时生成的文件数组中的 error 字段中被找到,也就是 $_FILES['userfile']['error']。



UPLOAD_ERR_OK
其值为 0,没有错误发生,文件上传成功。

UPLOAD_ERR_INI_SIZE
其值为 1,上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。

UPLOAD_ERR_FORM_SIZE
其值为 2,上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。

UPLOAD_ERR_PARTIAL
其值为 3,文件只有部分被上传。

UPLOAD_ERR_NO_FILE
其值为 4,没有文件被上传。

UPLOAD_ERR_NO_TMP_DIR
其值为 6,找不到临时文件夹。PHP 4.3.10 和 PHP 5.0.3 引进。

UPLOAD_ERR_CANT_WRITE
其值为 7,文件写入失败。PHP 5.1.0 引进。
回复
jekend 2006-11-02
我有遇到 firewall 设定引起的异常.因为是客户的环境,不让看.
只是测试一下,将 Server 移到 firewall 外就ok,在 firewall 内就不行.

所以,firewall 的 polocy 会有影响.
回复
Gdj 2006-06-28
对。文件大小变化是有的。图片异常就。。。
回复
mynamesucks 2006-06-28
如果从windows上传到linux可能会由于文件系统的不同而大小不同
但是不会发生楼主所说的"图片显示异常"
回复
indexroot 2006-06-27
multipart/form-data
就是指定了提交数据的编码方式

文件大小发生变化,你可以用
Ultra Editor "文件"->"比较文件..." 比较方式选"二进制"
比较一下原文件和上传后的文件

看看区别


偶遇到文件变化的情况就是
使用LDAP Function在把证书存到LDAP里出现过
解决涉及到用usercertificate;binary属性

其他没有遇到文件变化
回复
xuzuning 2006-06-27
既然只在一台 server 上出现,那就说明代码没有问题

有谁知道会在什么 server 上出问题呢?
回复
jekend 2006-06-27
沒有人遇到嗎?
回复
相关推荐
发帖
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
帖子事件
创建了帖子
2006-06-27 03:11
社区公告
暂无公告