[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 646
  • Last Modified:

AspSmartUpload problem when checking file size error 800a0005 invalid procedure call or argument

Hi guys,

I have a very wierd problem, when i changed my upload script by add a checking file size before upload script, it gives this error:

Microsoft VBScript runtime Error '800a0005'

Invalid procedure call or argument: 'Left'

The below is the original script and works with NO problem:

'###############  UPLOAD   #############
                        
                        Dim objUpload
                        Dim file
                        Dim intCount
                        intCount=0
                        
                        Set objUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
                        objUpload.Upload
                        
                  
                      dim loop_counter                                    
                        
                                                                                                
                        dim sqlPhoto_add, rsPhoto_add, strFileOne, photo_src, photo_name, photo_desc, photo_border                                                      
                                                                                                                        
            
                        loop_counter = 0
                        
                        for each file In objUpload.Files
                              if file.IsMissing then
                        %>
                              
                        <%
                                    
                              else
                                    
                                    file_name = file.filename
                                    Randomize
                                    rand = "_" & Int(Rnd*(9999 -1))            
                                    'file_folder = datepart("yyyy", now(), vbSunday, vbFirstJan1) & "-" & datepart("m", now(), vbSunday, vbFirstJan1) & "-" & datepart("d", now(), vbSunday, vbFirstJan1)
                                    file_name2 = Left(file_name, 4)
                                    file_name = Left(file_name2, InStr(1,file_name,".",1)-1) & rand & "." & file.FileExt
                                    file.SaveAs(getDirectory(FULL_PATH_HIRES & file_folder) & "\" & file_name)            
                        
                                    'msg = msg & "Name = " & file.Name & "\n"
                                    msg = msg & "filename = " & file.filename & "\n"            
                                    msg = msg & "FileExt = " & file.FileExt & "\n"
                                    msg = msg & "Size = " & file.Size & "\n"
                                    msg = msg & "FilePathName = " & file.FilePathName & "\n"
                                    msg = msg & "ContentType = " & file.ContentType & "\n"
                                    msg = msg & "ContentDisp = " & file.ContentDisp & "\n"
                                    msg = msg & "TypeMIME = " & file.TypeMIME & "\n"
                                    msg = msg & "SubTypeMIME = " & file.SubTypeMIME & "\n"
                                    
                                    intCount = intCount + 1
                                    res = createThumb(file_name)
                                    if (res = 0) then
                                    %>
                                          
                                    <%
                                    else            
                                    %>
                                          <script language='JavaScript'>
                                                alert("Create thumbnail fail. Please try again.");
                                                window.location="./photo_add_2.asp?id=<%= objUpload.Form("id").values %>";
                                          </script>                  
                                    <%
                                    end if
                                    
                                    sqlPhoto_add = "INSERT INTO FB_PhotoImage (PhotoCat_id,member_id,photo_src,photo_name,photo_desc,photo_border) VALUES ("& objUpload.Form("id").values &","& session("FB_UserID") &",'"& file_name &"','"& objUpload.Form("txtPhoto_name_"& loop_counter &"").values &"','"& objUpload.Form("txtPhoto_desc_"& loop_counter &"").values &"','"& objUpload.Form("optPhotoBorder_"& loop_counter &"").values &"')"
                                                                                          
                                    'response.Write(sqlPhoto_add)
                                    'response.Write("<br>")
                                    
                                    set rsPhoto_add = server.createobject("adodb.recordset")
                                    rsPhoto_add.cursorlocation = 3
                                    rsPhoto_add.open sqlPhoto_add, adoConn                                          
                                    
                              end if
                              loop_counter = loop_counter +1
                        next
'##################################################################

But then when i changed:

if file.IsMissing then
.                                    
.
.
else

TO

if file.Size > 256000 then
                                    %>
                                          <script language='JavaScript'>
                                                            alert("Your file size cannot exceed 250KB");
                                                            window.location="./photo_add_2.asp?id=<%= objUpload.Form("id").values %>";
                                          </script>
                                          
                                    <%                                                      
                                    
                              
                              else

It gives the errors, I have no idea why, is it because I attempt to use file.Size? Anyone know why?? Thanks~!
0
huang_ck
Asked:
huang_ck
2 Solutions
 
GawaiCommented:
to check file size pls refer

http://www.sitiasp.it/dllDoc/aspSmartUpload/help/FileObject.htm

Size

The Size property contains the file's size.

Syntax
.Size

Return Value
Returns a Long value.

Example
<%
Response.Write("Size=" & MyUpLoad.Files.Item(2).Size)
%>

0
 
amit_gCommented:
In your original script, change

if file.IsMissing then
.                              
.
.
else

to

if file.IsMissing then
.                              
.
.
elseif file.Size > 256000 then
%>
                                   <script language='JavaScript'>
                                                  alert("Your file size cannot exceed 250KB");
                                                  window.location="./photo_add_2.asp?id=<%= objUpload.Form("id").values %>";
                                   </script>
<%
else
0

Featured Post

[Webinar] Kill tickets & tabs using PowerShell

Are you tired of cycling through the same browser tabs everyday to close the same repetitive tickets? In this webinar JumpCloud will show how you can leverage RESTful APIs to build your own PowerShell modules to kill tickets & tabs using the PowerShell command Invoke-RestMethod.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now