鬼马 发表于 2012-5-11 12:29:25

咨询一个问题,关于上传文件名的长度与能否正常下载

本帖最后由 鬼马 于 2012-5-12 21:30 编辑

尊敬的管理员大大,首先为您的辛苦劳动致谢,尤其是值此6.5版即将推出之际,真心的希望PHPDISK发展得更好。

有人要说:你在这空话白话的表示感谢,为啥不购买授权,以实际行动来支持PHPDISK的发展呢?
其实嘛,说句实在话,让我们这些小站长们,在免费版存在的情况下去购买收费版,这本身就是个伪命题。
中国这个版权等思想环境下的必然...

正式要咨询的问题开始,如下:

第一步:我上传一个文件,文件大小假定为100K,比方说文件名是:

个人版本的PHPDisk 只能用于个人以及无商业性质的个人学习和使用,如果想使用phpdisk作商业用途,请购买商业授权.pdf

如上所示,这个文件名中文字符41个,英文字符16个,那么在后台上传后,前端显示的HTML页面的标题即与文件名默认相同(站长可以选择去修改),

个人版本的PHPDisk 只能用于个人以及无商业性质的个人学习和使用,如果想使用phpdisk作商业用途,请购买商业授权.pdf - XX网站

这些都没问题。

但是问题来了。。。点击下载后,无论如何这个100K的PDF文件都无法下载下来。

第二步:那么再次做一些改动,将同样的文件,将名字修改短一点,其余均不做改动,如下

个人版本的PHPDisk 只能用于个人以及无商业性质的个人学习和使用.pdf

那么,重新上传后,因为名字改变了(实际上名字不改也是如此,PHPDISK目前还没重复文件鉴别的功能),前端显示的HTML页面的标题即为

个人版本的PHPDisk 只能用于个人以及无商业性质的个人学习和使用.pdf - XX网站

此时,点击下载,文件可以正常下载。

再次进入后台,将HTML页面的标题修改成如第一步的相同,而真实的PDF文件名不做改动。

个人版本的PHPDisk 只能用于个人以及无商业性质的个人学习和使用,如果想使用phpdisk作商业用途,请购买商业授权.pdf - XX网站

那么点击下载后仍然可以正常下载。

那么最后,总结出个问题:

1、HTML页面的名字在文件上传后,可以随意修改,而且长度不限,只是太长了的时候,页面会放不下而无法显示或者被自动截取掉一段。但不影响文件的正常下载。

2、上传的文件,名字不能过长,一旦大于          字符,即尽管可以正常上传和生成前端页面,但却无法下载,也就是无法提取。

管理员大大,能否帮忙告诉下问题2的这个字符数最大是多少?如果想修改掉这个限制或者加长一点,在哪里修改?

因为的确有很多文件的名字比较长。


补充:

再次发现一个问题:

上面的总结1中说的,可以修改名字而不影响下载,发现这东西还是有概率的。晕死这程序啊。

打个比方,为了能让某个长文件名文件上传,不得不把名字改短“XXXX.PDF”,然后上传后再在后台编辑成“XXXXXXX....XXXXXXXXX.PDF”,那么是有一定概率在空间中额外生成一个大小和内容与XXXX.PDF一样的文件XXXXXXX....XXXXXXXXX.PDF,点击修改后的页面下载,链接指向XXXXXXX....XXXXXXXXX.PDF,但下载下来的是XXXX.PDF。那么恭喜你,成功了。但也有一定的概率将原文件直接变成XXXXXXX....XXXXXXXXX.PDF,而XXXX.PDF却没了,那么就下载不下来了。

不知道各位有没有人跟我一样的测试过?

simplify 发表于 2012-5-11 18:08:43

对,我也发现这个问题了,文件名过长的时候,无论是哪种类型的文件都不能下载,顶起这个bug

simplify 发表于 2012-5-11 18:09:57

我也发现这个问题,估计是数据库里面的表设计的时候字段长度设置的有问题

simplify 发表于 2012-5-11 23:46:05

看了下数据库,改pd_files表里的file_name字段,改字段类型长度,改为varchar(800),点执行,看看是不是解决了~

鬼马 发表于 2012-5-12 00:38:10

不是这个地方。我之前尝试过,不行。

simplify 发表于 2012-5-12 12:14:02

鬼马 发表于 2012-5-12 00:38 static/image/common/back.gif
不是这个地方。我之前尝试过,不行。

我用的6.0.0tcote版本的,就这么改的,可以,不知道你的是什么版本?

鬼马 发表于 2012-5-12 19:16:01

PHPDisk T-Core File Edition 6.0.0 (Build20110928)

为啥我测试是不可以的呢?纳闷。

管理员大大这两天不知道忙啥去了,呵呵

鬼马 发表于 2012-5-12 21:31:35

simplify 发表于 2012-5-11 23:46 static/image/common/back.gif
看了下数据库,改pd_files表里的file_name字段,改字段类型长度,改为varchar(800),点执行,看看是不是解 ...

改完之后的确能够正常显示。但你测试文件能够下载么?

这个字节的是文章标题的长度,而不是提取文件的长度啊

simplify 发表于 2012-5-12 21:32:50

鬼马 发表于 2012-5-12 21:31 static/image/common/back.gif
改完之后的确能够正常显示。但你测试文件能够下载么?

这个字节的是文章标题的长度,而不是提取文件的长 ...

嗯,可以下载,我上传的是长文件名的图片文件,然后改完后可以下载,也可以正常显示

鬼马 发表于 2012-5-12 21:39:50

simplify 发表于 2012-5-12 21:32 static/image/common/back.gif
嗯,可以下载,我上传的是长文件名的图片文件,然后改完后可以下载,也可以正常显示 ...

晕死。。我这改成200,300,400等等都不行。

页: [1] 2
查看完整版本: 咨询一个问题,关于上传文件名的长度与能否正常下载