?
Solved

Microsoft VBScript runtime  error '800a01b6' / Object doesn't support this property or method: 'Response.Form'

Posted on 2006-06-22
3
Medium Priority
?
545 Views
Last Modified: 2008-01-09
Hi ,

I am having problem while trying to send variables from a page to the Upload.

Can u please help me to resolve this issue?

Thank you in advance for ur help
Emiliano



Below the error i get when I add T1=Response.Form("T1") into outputfile.asp  :
--------------------------------------------------
Microsoft VBScript runtime  error '800a01b6'

Object doesn't support this property or method: 'Response.Form'

/public/outputFile.asp, line 36
-------------------------------------------------------

I attach here the scripts:

======= UPLOAD.ASP =================
<%Sub BuildUploadRequest(RequestBin)
      PosBeg = 1
      PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
      boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
      boundaryPos = InstrB(1,RequestBin,boundary)
      Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString("--")))
            Dim UploadControl
            Set UploadControl = CreateObject("Scripting.Dictionary")
            Pos = InstrB(BoundaryPos,RequestBin,getByteString("Content-Disposition"))
            Pos = InstrB(Pos,RequestBin,getByteString("name="))
            PosBeg = Pos+6
            PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34)))
            Name = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
            PosFile = InstrB(BoundaryPos,RequestBin,getByteString("filename="))
            PosBound = InstrB(PosEnd,RequestBin,boundary)
        If  PosFile<>0 AND (PosFile<PosBound) Then
                  PosBeg = PosFile + 10
                  PosEnd =  InstrB(PosBeg,RequestBin,getByteString(chr(34)))
                  FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
                  UploadControl.Add "FileName", FileName
                  Pos = InstrB(PosEnd,RequestBin,getByteString("Content-Type:"))
                  PosBeg = Pos+14
                  PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
                  ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
                  UploadControl.Add "ContentType",ContentType
                  PosBeg = PosEnd+4
                  PosEnd = InstrB(PosBeg,RequestBin,boundary)-2
                  Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
                  Else
                  Pos = InstrB(Pos,RequestBin,getByteString(chr(13)))
                  PosBeg = Pos+4
                  PosEnd = InstrB(PosBeg,RequestBin,boundary)-2
                  Value = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
            End If

            UploadControl.Add "Value" , Value      
            UploadRequest.Add name, UploadControl
            BoundaryPos=InstrB(BoundaryPos+LenB(boundary),RequestBin,boundary)
      Loop
  End Sub
  Function getByteString(StringStr)
      For i = 1 to Len(StringStr)
            char = Mid(StringStr,i,1)
            getByteString = getByteString & chrB(AscB(char))
      Next
  End Function
  Function getString(StringBin)
      getString =""
      For intCount = 1 to LenB(StringBin)
            getString = getString & chr(AscB(MidB(StringBin,intCount,1)))
      Next
  End Function%>

===== outputFile.asp ==========
<!--#include file="upload.asp"-->
<%

  Response.Expires=0
  Response.Buffer = TRUE
  Response.Clear
  byteCount = Request.TotalBytes
  RequestBin = Request.BinaryRead(byteCount)
  Dim UploadRequest
  Set UploadRequest = CreateObject("Scripting.Dictionary")
  BuildUploadRequest  RequestBin
  contentType = UploadRequest.Item("blob").Item("ContentType")
  filepathname = UploadRequest.Item("blob").Item("FileName")
  filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
  value = UploadRequest.Item("blob").Item("Value")

  'Create FileSytemObject Component
  Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")

  'Create and Write to a File
  pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
  Set MyFile = ScriptObject.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd) & filename)
 
  For i = 1 to LenB(value)
       MyFile.Write chr(AscB(MidB(value,i,1)))
  Next
  MyFile.Close            %>


===== that's the HTML for i am using to send the variable to the upload page ======

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
  <title></title>
</head>

<body>

  <form METHOD="Post" name="prova1" ENCTYPE="multipart/form-data" action="public/outputFile.asp" >
  t1:<input name="T1"><br>
File : <INPUT TYPE="file" NAME="blob"><BR>



         <input type="submit" name="Insert" value="" >
  </form>


</body>

</html>
0
Comment
Question by:pixer77
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 43

Assisted Solution

by:TimCottee
TimCottee earned 750 total points
ID: 16958854
Hi pixer77,

It should be Request.Form not Response.Form, request is input, response is output.

Tim Cottee
0
 
LVL 25

Accepted Solution

by:
kevp75 earned 750 total points
ID: 16959329
tim is correct, there is no response.form

on outputFile.asp you will have to change them to request.form, though I don't think that will work either as you are requesting a binary file from the form.

try replacing it with:
UploadRequest.Item("T1")
0
 

Author Comment

by:pixer77
ID: 16959616

For tim , you are right , I posted the wrong error, I meant :

--------------------------------------------------------------
Request object error 'ASP 0207 : 80004005'

Cannot use Request.Form

/public/outputFile.asp, line 36

Cannot use Request.Form collection after calling BinaryRead.
-------------------------------------------------------------------

For kevp75 , I tryed UploadRequest.Item("T1")  before posting and i got  different errors becasue i forgot to add Item("Value")

 UploadRequest.Item("T1").Item("Value")

thank you anyway for your help, if you let mee how to split the points  , i'll give them to both of you

cheers
emiliano

0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Hello, all! I just recently started using Microsoft's IIS 7.5 within Windows 7, as I just downloaded and installed the 90 day trial of Windows 7. (Got to love Microsoft for allowing 90 days) The main reason for downloading and testing Windows 7 is t…
This demonstration started out as a follow up to some recently posted questions on the subject of logging in: http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_28634665.html and http://www.experts-exchange.com/Programming/…
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…
In this video, Percona Solution Engineer Dimitri Vanoverbeke discusses why you want to use at least three nodes in a database cluster. To discuss how Percona Consulting can help with your design and architecture needs for your database and infras…
Suggested Courses

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question