我正在尝试在经典asp中上传图片,并使用下面的代码。
file_path = "/uploads/events/upload_img"
img_folder = Server.MapPath(file_path)
Set Upload = Server.CreateObject("Persits.Upload")
Upload.CodePage = 949
Upload.SetMaxSize (500 * 1024), True
Upload.OverwriteFiles = false
Upload.CreateDirectory img_folder, True
Upload.save
Upload.Files("img1")
此处img1
包含从用户处获取的图像:
<input type="file" name="img1" />
但是它正确执行但在/uploads/events/upload_img
谁能告诉我为什么会这样?感谢
答案 0 :(得分:1)
因为您使用的save()
方法没有参数,所以文件正在上传到服务器的内存,而不是文件夹。
试试这个:
img_folder = Server.MapPath("/uploads/events/upload_img")
Set Upload = Server.CreateObject("Persits.Upload")
Upload.CodePage = 949
Upload.SetMaxSize (500 * 1024), True
Upload.OverwriteFiles = false
Upload.CreateDirectory img_folder, True
Upload.Save(img_folder)
uploadedImg = Upload.Files("img1")
以下是Persits.Upload对象引用中Save() method的链接。
答案 1 :(得分:0)
以下代码有效。只需从多部分表单发布即可。
=========================
EXAMPLE MULTIPART FORM
=========================
<form method="post" enctype="multipart/form-data" action="">
<input type="file" name="img1" /><input type="submit" />
</form>
=========
ASP CODE
=========
Set Upload = Server.CreateObject("Persits.Upload")
Upload.CodePage = 949
Upload.SetMaxSize (500 * 1024), True
Upload.OverwriteFiles = False ' Generate unique names
Upload.Save "C:\path\filename.jpg"
Set File = Upload.Files(1)
uploadedImg = File.ExtractFileName
Set Upload = Nothing
Set File = Nothing