Vbscript 如何在上载到web文件夹时重命名图像文件名

Vbscript 如何在上载到web文件夹时重命名图像文件名,vbscript,asp-classic,image-uploading,image-upload,Vbscript,Asp Classic,Image Uploading,Image Upload,我用的是asp经典。我想在上传我创建的网络文件夹中的图像时重命名图像文件。请帮我解决这个问题 如果目标文件夹中有一个文件与我正在上载的文件同名(如lokesh.jpg),则新文件应自动重命名(如lokesh1.jpg),而不是覆盖 我的代码如下: upload.asp submit.asp 请帮助我解决此问题。如果要按照示例filenamenumber.ext中的已知模式对其进行重命名,必须使用如下伪代码: let counter = 1 let original = file(0).File

我用的是asp经典。我想在上传我创建的网络文件夹中的图像时重命名图像文件。请帮我解决这个问题

如果目标文件夹中有一个文件与我正在上载的文件同名(如lokesh.jpg),则新文件应自动重命名(如lokesh1.jpg),而不是覆盖

我的代码如下:

upload.asp

submit.asp


请帮助我解决此问题。

如果要按照示例filenamenumber.ext中的已知模式对其进行重命名,必须使用如下伪代码:

let counter  = 1
let original = file(0).Filename
let current  = file(0).Filename
while(current file exists)
    current  = original-without-extension + (counter) + original-extension
    counter  = counter + 1
end
但是,我认为最好将用户提供的文件名存储到数据库中,然后选择一个类似随机文件名的文件名将实际文件存储到文件系统中

let current = userLogin + (currentTime as yyyyMMddHHmmss) + ".uploaded"
通过使用伪造的文件扩展名,您可以使您的应用程序更加安全,因为您的文件将不可解释/可执行-想象一个恶意用户上载一个.ASP文件并执行它

如果中断图像MIME类型,则应该考虑创建另一个.asp页面,根据用户提供的文件扩展名读取数据库以发现适当的MIME类型,写出内容类型和二进制文件内容。


TL;DR:不要使用用户提供的文件名,创建一个新的文件名。这将避免服务器黑客攻击。

仍在等待。请帮帮我
let counter  = 1
let original = file(0).Filename
let current  = file(0).Filename
while(current file exists)
    current  = original-without-extension + (counter) + original-extension
    counter  = counter + 1
end
let current = userLogin + (currentTime as yyyyMMddHHmmss) + ".uploaded"