C# 如何发布具有特定提交名称 (ID) 的数据


C# how to post data with specific submit name (ID)

我需要的是发布数据并在不浏览页面的情况下获得结果,我应该发布到的 php 页面有一个 if 语句检查帖子是否通过提交按钮,为了使事情更清楚,假设我有此页面

<form action="test2.php" method="post" name="myphpform" onSubmit="return checkForm()"  >
<table border=0>
<tr>
    <td>Your Name:</td> <td><input type="text" name="yname" size="50"    maxlength="50" value="" /></td>
</tr>
<tr>
    <td>Your Email:</td> <td><input type="text" name="email" size="50" maxlength="50" value="" /></td>
</tr>
<tr>
    <td>Message:</td> <td><input type="text" name="message" size="50" maxlength="50" value="" /></td>
</tr>
<tr>
    <td>Are you a human being?</td>
    <td>
 <td><input type="submit" name="submitname" value="submitvalue" /></td>

 if ($_POST["submitname"]) 
 {
  //echo "Post succeeded";
 }

现在,如果我使用任何方法将数据发布到该页面,当我将条件更改为

 if ($_POST)
   {
      //echo "Post succeeded";
   }

我得到成功的味精

这是我正在使用的方法

System.Net.WebRequest req = System.Net.WebRequest.Create(URI);
string PostData = "Post Test data";
req.ContentType = "application/x-www-form-urlencoded";
req.Method = "POST";
byte[] bytes = Encoding.UTF8.GetBytes(PostData);
req.ContentLength = bytes.Length;
System.IO.Stream os = req.GetRequestStream();
os.Write(bytes, 0, bytes.Length);
os.Close();
System.Net.WebResponse resp = req.GetResponse();

我想知道有没有办法发布数据并触发 if 语句?提前致谢

您正在检查$_POST['submitname']是否存在并且具有"有意义"的值,因此您需要在帖子中使用此参数及其名称设置此参数,如下所示:

string PostData = "submitname=Post Test data";

如果您想向POST主体添加更多参数,您可以这样做:

PostData += "&another=some other value";