manually posting to a specific FORM

A

Amil Hanish

There is a site that has multiple FORM elements. How do I programatically
POST to a specific form? The individual FORM elements have a <input
name=xxx type=image return true> that is used to submit the form.

<form name="form1" action=http://abc.com METHOD="POST"><input name="submit"
type="image" onclick="return checkinput();"src="/img/submit.gif" WIDTH="56"
HEIGHT="18">Amil
 
P

pankpank1

There is a site that has multiple FORM elements. How do I programatically
POST to a specific form? The individual FORM elements have a <input
name=xxx type=image return true> that is used to submit the form.

<form name="form1" action=http://abc.comMETHOD="POST"><input name="submit"
type="image" onclick="return checkinput();"src="/img/submit.gif" WIDTH="56"
HEIGHT="18">Amil

grrhhhcfvncv
 
A

Alexey Smirnov

There is a site that has multiple FORM elements. How do I programatically
POST to a specific form? The individual FORM elements have a <input
name=xxx type=image return true> that is used to submit the form.

<form name="form1" action=http://abc.comMETHOD="POST"><input name="submit"
type="image" onclick="return checkinput();"src="/img/submit.gif" WIDTH="56"
HEIGHT="18">Amil

You can use HttpWebRequest class.

Sample code on VB:

Dim web_request As HttpWebRequest = Nothing
web_request = WebRequest.Create("http://form_address")

web_request.Method = "POST"
web_request.ContentType = "application/x-www-form-urlencoded"

Dim requestData As Byte() =
Encoding.GetEncoding(1252).GetBytes("test")
web_request.ContentLength = requestData.Length

Dim response_str As String
Dim requestStream As Stream

requestStream = web_request.GetRequestStream()
requestStream.Write(requestData, 0, requestData.Length)
requestStream.Close()
 
G

Guest

You cannot "POST to a specific form". A form makes a POST, and it is either
to the same page or another page. What you can do is pass an identifier field
(hidden field, for example) that tells you "which" of your FORM Tags made the
post.
Peter
 
A

Amil Hanish

I don't think you understand. There is an EXISTING site (not .NET) that has
three FORM elements. I'm writing a .NET program (Windows Service) that
needs to POST to a specific FORM of the EXISTING site. I'm setting my url
to the "action" of the specific form and trying to add all the content by 1)
setting the ContentLength and 2) writing the content to the request
stream...but it doesn't seem to be working.

Amil
 
A

Alexey Smirnov

I don't think you understand. There is an EXISTING site (not .NET) that has
three FORM elements. I'm writing a .NET program (Windows Service) that
needs to POST to a specific FORM of the EXISTING site. I'm setting my url
to the "action" of the specific form and trying to add all the content by 1)
setting the ContentLength and 2) writing the content to the request
stream...but it doesn't seem to be working.

Amil, give us the code of the form.
 
A

Amil

The site is the UPS site...the tracking page...so you can view full source
there. I'm just trying to automate where I insert a tracking # and agree to
the terms. Here is a very brief snippet of the form (although there are
other forms in the full source).

When I do the POST using my httpwebrequest object, all is fine, but I just
get the same page back...no errors or anything. I'm posting to the same url
as the "action" tag below. Thanks.
<html xmlns="http://www.w3.org/1999/xhtml">

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

<body>

....

<form name="trkinput" action="http://wwwapps.ups.com/WebTracking/track"
METHOD="POST">

<input type="hidden" name="loc" value="en_US" />

<input type="hidden" name="HTMLVersion" value="5.0" />

<input type="hidden" name="saveNumbers" value="null" />

<p></p>

<textarea rows="5" cols="40" name="trackNums" class="modTxtAreaTrack">

</textarea>

<p></p>

<input name="AgreeToTermsAndConditions" type="checkbox" value="yes" />

By selecting this box and the Track button, I agree to the

<a href="javascript:helpModLvl('/WebTracking/terms?loc=en_US')">

Terms and Conditions

<img alt="" src="/img/1.gif" align="bottom" border="0" height="7"
width="3"><img alt="" src="/img/icn_popup_blue.gif" align="bottom"
border="0" height="9" width="9" /></a>.

<p></p>

<input name="track" type="image" onclick="return
wrapperCheckTerms(trkinput);"

src="/img/en/btn_track_a_v2.gif" WIDTH="56" HEIGHT="18" alt="Track" />

</form>

</body>

</html>
 
A

Amil Hanish

Excellent! Works like a charm! I've only tried the HTML tracking, but very
easy. Thanks!

Amil
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top