请参阅下面的图片,您将获得与我的问题相关的背景信息。
该网站是一个有才华的摄影师网站,他们可以上传图片,让其他人看到他们拍摄的内容。
由于设计问题,我的工作很震惊。
用户(无需注册)可以打开我的网站和上传详细信息,如姓名,移动,描述,图像(同一用户可以上传不同的图像),其中手机号码是mantadatory字段。因此,在上传图片时,我将其附加到手机号码+ FileName.jpg,图片将存储在我的服务器内的文件夹内,其余的详细信息如手机号码,desc,名称--etc将存储在MYSQL数据库中。 (这是一部分,已完成)
第二部分是 在页面启动时,我将从该文件夹中获取所有图像(最新修复20个)并在页面上显示。
因此,当任何用户点击特定图像时,我需要显示描述,名称,等等的详细信息,以及该图像的onclick事件,我从点击的图像中获取手机号码并制作一个在数据库中搜索。 (现在这里有一个问题),即同一个用户(具有相同的手机号码)可以将不同的图片上传到网站,因此使用手机号码搜索会给我很多结果。
图片名称格式为83746787695iokI.jpg。
我准备好了任何格式,所以请告诉我们如何解决这个问题
答案 0 :(得分:2)
如果文件名为83746787695iokI.jpg
,您应该能够解析上传者的电话号码和原始文件名,然后使用这些值查询您的照片表。正则表达式可能是:
/^([0-9]{11})(.+)\.jpg$/
话虽如此,您应该考虑为每张照片分配一个唯一的标识符,并使用它来命名您保存的文件。 MySQL中的id列可能如下所示:
id INT NOT NULL AUTO_INCREMENT
插入后,获取新行的ID(在MySQL中为LAST_INSERT_ID()
)并保存文件名称为#{id}.jpg
。
请注意,自动增量ID是可预测的整数,您的文件名将为1.jpg
,2.jpg
等。可以使用简单的脚本从服务器下载所有图像。为避免这种情况,请使用随机生成的唯一字符串命名文件,例如UUID。将该字符串存储在表格的新列中,然后使用该字符串识别您的照片。
答案 1 :(得分:0)