0

我正在尝试将图像上传到服务器上的目录。我正在使用http://www.reconn.us/content/view/30/51/上的教程。

首先,这是使用 PHP 上传图片的好方法吗?

其次,我还将信息存储在 MySQL 数据库中。处理与用户上传的同名图像的好方法是什么?例如,如果用户连续 2 次上传文件“test.png”,那么第二个文件名应该如何处理?从上面的脚本中,两者都将获得一个唯一的文件名,但是作为用户,我将如何再次访问该图像?我不能只是查询,因为我知道的唯一名称是我给它的重复名称,而且我绝对不知道服务器使用上传时间给它的唯一名称......

第三,图像的最大文件大小是多少?

4

2 回答 2

1

您可以在上传后将唯一 URL 报告给用户,以便用户知道在哪里可以找到图像。因此,第一个 test.png 可以是http://www.example.com/images/fjdklagjsdl.jpg,第二个可以是http://www.example.com/images/jklfsdlkj.jpg

您还可以为用户提供某种界面来查看他们上传的图像。如果您在图像的唯一文件名旁边显示上传图像的缩略图,用户将很容易识别哪个图像是哪个。

于 2009-12-29T04:24:00.320 回答
0

这是我使用的方法:

  1. 用户上传图片

  2. 服务器使用唯一的(GUID 或其他)文件名保存图像,并将唯一生成的文件名和原始上传的文件名存储在数据库中

  3. 使用表的original_filename,unique_filename或 primary_key链接图像images

图像取自服务器,并使用存储在数据库中的原始文件名提供服务。这样可以避免文件名冲突的机会,并保留图像的原始文件名。此外,这允许您在original_filename列上构建搜索以供用户使用。

使用这种方法,永远不必向用户公开唯一的文件名,而是使用它们来定位与特定idoriginal_filename“图像”表相关联的图像。

当然,如果您不关心在图像显示时为图像提供原始文件名,您可以在想要存储它时生成一个唯一的文件名。

于 2009-12-29T04:35:02.337 回答