Home » » Membuat Form File Upload Dengan ASP

Membuat Form File Upload Dengan ASP

Bagi seorang web programmer berbasis ASP seringkali menemui kendala dalam membuat aplikasi web lengkap dengan halaman upload. Bagaimana tidak, untuk dapat membuat sebuah halaman upload saja, seringkali seorang programmer harus menginstall/menambahkan komponen (ActiveX) baru untuk menangani hal tersebut. Belum lagi komponen yang diinstal tersebut harus ditebus dengan sejumlah duit alias tidak gratis.

Dalam artikel ini, saya akan membuat sebuah halaman upload tanpa menggunakan/menginstall komponen (ActiveX) baru. Melainkan menggunakan beberapa file yang di sertakan (include) bersama dengan file upload.
Untuk keperluan itu, terlebih dahulu persiaplan item-item berikut:
  • Download file upload.inc, utils.inc dari situs http://www.pstruh.cz, atau bisa juga di http://virbo.bakti-insani.org. Setelah Anda memiliki ketiga file ini, extractlah difolder tempat semua file upload akan disimpan.
  • Pastikan Web Server Anda telah aktif. Untuk web server bisa menggunakan PWS ataupun IIS.

Jika semua persiapan telah siap, maka langkah selanjutnya adalah membuat file form-upload.htm dan upload-file.asp. Source codenya seperti berikut :


 form-upload.htm

<table width="508" align="center">
  <form method=post ENCTYPE="multipart/form-data" action="upload-file.asp">
    <tr bgcolor=silver>
       <td colspan="2" align="right">
          <input type="submit" value="Upload the files >>">
       </td>
    </tr>
    <tr>
       <td colspan="2">
          <table width="100%" border="0" cellpadding="0" cellspacing="0">
             <tr>
                  <td width="9%">
                       File 1 :<br>
                       File 2 :
              </td>
                   <td width="91%">
               <input type="file" name="File1"><br>
                        <input type="file" name="File2">
              </td>
             </tr>
           </table>
         </td>
    </tr>
    <tr>
         <td>Comments</td>
         <td><input size="60" name="Comments" value=" "></td>
    </tr>
    <tr>
         <td>Description</td>
         <td><textarea cols="60" rows="8" name="Description"></textarea></td>
    </tr>
  </form>
</table>

Tampilannya seperti berikut:


  upload-file.asp

'Include file
<!--#include file="inc/upload.inc"-->
<!--#include file="inc/utils.inc"-->

<%

Option Explicit

'Deklarasi variabel
Dim ResultHTML, DestinationPath, Upload, Field

Server.ScriptTimeout = 200

'Folder untuk menyimpan file yang diupload
DestinationPath = Server.MapPath(".")

'Folder untuk menyimpan log dari file yang diupload
LogFolder = Server.MapPath(".")

'batas besarnya file
UploadSizeLimit = 1000000

'Metode request dari Form harus "POST"
If Request.ServerVariables("REQUEST_METHOD") = "POST" Then

    'mengambil field2 file yang diupload
    Set Upload = GetUpload()

    ResultHTML = ""
   
    'Jika upload sukses
    If Err = 0 Then
     
      For Each Field In Upload.Items
        If isarray(Field) Then
        else
          ResultHTML = ResultHTML & "<br>Field : <b>"
          ResultHTML = ResultHTML & LogF(Field.Name) & "</b>, Length : <b>"
          ResultHTML = ResultHTML & LogFn(Field.Length)
          ResultHTML = ResultHTML & "</b>, Content-Type : <b>"
          ResultHTML = ResultHTML & LogF(Field.ContentType)
          ResultHTML = ResultHTML & "</b>, SourceFileName : <b>"
          ResultHTMl = ResultHTML & LogF(Field.FileName) & "</b>"
        end if
      Next

      ResultHTML = ResultHTML & "<br>"
      ResultHTML = ResultHTML & SaveUpload(Upload, DestinationPath, LogFolder)

    Else 'Jika error. Tampilkan pesan Error
      ResultHTML = ResultHTML & "<br>Error : " & Err.Description
    End If
      
           'Tampilkan pesan di Browser
       Response.Write ResultHTML

    On Error GoTo 0

    Upload = Empty 'Mengosongkan variabel

End If

%>


Tampilan dari skrip ini seperti berikut:


Catatan:
¨       File upload.inc berisi pernyataan fungsi dari GetUpload.
¨       File utils.inc berisi pernyataan fungsi SaveUpload.

Demikian artikel saya ini. Semoga dapat bermanfaat bagi teman-teman sekalian.

2 komentar: