Link to home
Start Free TrialLog in
Avatar of Larry Brister
Larry BristerFlag for United States of America

asked on

WEB Form POST in code behind

How would I accomplish this in vb code behind?


<form name="DateSelect" runat="server" action="http://www.domaincom/reserve.php" method="POST" target="_self">
<input type="hidden" name="cust_memberid" value="EX80000">

---MORE HIDDEN INPUTS-----
<input id="Submit1" type="submit"
    value="submit" OnClick="return checkDates(this.form)"/>
</form>



I have the code below and need to modify the second sub to get the post back with however the "return checkDates..."  is working


....blah...blah...blah...
 
_wXML &= "<input type=""hidden"" name=""numrooms"" value=""2"">"
_wXML &= "<input type=""hidden"" name=""sh"" value=""yes"">"
_wXML &= "<input type=""hidden"" name=""lang"" value=""en"">"
_wXML &= "<input type=""hidden"" name=""grp"" value=""exotictrav"">"
 
 GetReservationsInventory("http://www.reservationdomain.com/reserve.php", _wXML)
 
 
Public Sub GetReservationsInventory(ByVal URI As String, ByVal Parameters As String)
        Dim req As System.Net.WebRequest = System.Net.WebRequest.Create(URI)
 
        Dim request As HttpWebRequest
        Dim response As HttpWebResponse = Nothing
        Dim ds As DataSet
 
        Try
            ' Create the web request   
            request = DirectCast(WebRequest.Create(URI), HttpWebRequest)
            request.ContentType = "application/x-www-form-urlencoded"
            request.Method = "POST"
 
 
           
            ' Get response   
            response = ----WHAT?----
           
        Finally
            If Not response Is Nothing Then response.Close()
        End Try
 
    End Sub

Open in new window

Avatar of tillgeffken
tillgeffken

Your going down the wrong road my friend. Posting data to that server is not as trivial as that. I'm a C# programmer so i can't guarantee this is working code but should get you the idea. (Modified MSDN example code)

Dim MyPostData As String = "numrooms=2&sh=yes&lang=en&group=exotictrav"
Dim MyUrl As String = "http://www.reservationdomain.com/reserve.php"
FetchData(MyUrl, MyPostData)
 
 
        Public Sub FetchData(ByVal URI As String, ByVal PostData As String)
            ' Create a request using a URL that can receive a post. 
            Dim request As WebRequest = WebRequest.Create(URI)
            ' Set the Method property of the request to POST.
            request.Method = "POST"
            ' Create POST data and convert it to a byte array.
            Dim postData As String = PostData 
            Dim byteArray As Byte() = Encoding.UTF8.GetBytes(postData)
            ' Set the ContentType property of the WebRequest.
            request.ContentType = "application/x-www-form-urlencoded"
            ' Set the ContentLength property of the WebRequest.
            request.ContentLength = byteArray.Length
            ' Get the request stream.
            Dim dataStream As Stream = request.GetRequestStream()
            ' Write the data to the request stream.
            dataStream.Write(byteArray, 0, byteArray.Length)
            ' Close the Stream object.
            dataStream.Close()
            ' Get the response.
            Dim response As WebResponse = request.GetResponse()
            ' Display the status.
            Console.WriteLine(CType(response, HttpWebResponse).StatusDescription)
            ' Get the stream containing content returned by the server.
            dataStream = response.GetResponseStream()
            ' Open the stream using a StreamReader for easy access.
            Dim reader As New StreamReader(dataStream)
            ' Read the content.
            Dim responseFromServer As String = reader.ReadToEnd()
            ' Do something with the response here.
 
            reader.Close()
            dataStream.Close()
            response.Close()
        End Sub

Open in new window

Avatar of Larry Brister

ASKER

tillgeffken:
When I run this post in regular HTML it posts to the remote domain...which then does it's own thing and a redirect to it's processing page.

The submit buttom looks like this...
<input type="submit" name="availcheck" value="Submit" onClick="return checkDates(this.form)">
ASKER CERTIFIED SOLUTION
Avatar of Larry Brister
Larry Brister
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial