2012-04-21 6 views
4

クラシックASPで画像をアップロードしようとしていますが、以下のコードを使用しています。Classic 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を介してユーザから撮影した画像が含まれます。それは、これは、なぜ誰も私を伝えることができ、正しく実行しますが、画像をフォルダに/uploads/events/upload_img

を見ていないが

<input type="file" name="img1" /> 

を?ありがとう

答えて

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

相対パスをこの関数の絶対パスに変換するには、 'Server.MapPath'が必要です。相対パスで作業するには、Upload.SaveVirtualを使用します。 –

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 
関連する問題