Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C中的Http post php数组#_C#_Php_Arrays_Post - Fatal编程技术网

C# C中的Http post php数组#

C# C中的Http post php数组#,c#,php,arrays,post,C#,Php,Arrays,Post,我正在尝试构建一个与我的php网页交互的C#表单应用程序。它将HTTP文件发布到php页面,但php页面需要一个数组 如果我用php而不是C#来做,它看起来像:(它可以工作) 那么如何在C#中发布这个php数组呢?我试过哈希表和字典,但有点不对劲。请帮帮我。谢谢。出于某种原因,我不确定这是否有帮助,但PHP将数组作为单独的字段 例如,如果您有数组$some_array=array('a'=>1,'b'=>2),并且您将其作为GET发布,那么URL将包含?some_array[a]=1和some_

我正在尝试构建一个与我的php网页交互的C#表单应用程序。它将HTTP文件发布到php页面,但php页面需要一个数组

如果我用php而不是C#来做,它看起来像:(它可以工作)


那么如何在C#中发布这个php数组呢?我试过哈希表和字典,但有点不对劲。请帮帮我。谢谢。

出于某种原因,我不确定这是否有帮助,但PHP将数组作为单独的字段

例如,如果您有数组
$some_array=array('a'=>1,'b'=>2)
,并且您将其作为GET发布,那么URL将包含
?some_array[a]=1和some_array[b]=2


这在POST请求中应该同样有效,只是在请求主体中,而不是URL中。

出于某种原因,我不确定这是否有帮助,但PHP将数组作为单独的字段

例如,如果您有数组
$some_array=array('a'=>1,'b'=>2)
,并且您将其作为GET发布,那么URL将包含
?some_array[a]=1和some_array[b]=2


这在POST请求中应该同样有效,只是在请求的主体中,而不是URL中。

显示您的c代码(即使不工作)可能是输入错误,而不是在实际代码中,但在php数组中,它应该是“a”=>“1”而不是“a”->“1”您是否签入Fiddler。。他们都在发送相同的数据。。如果没有,有什么区别呢?我正试着用C#来做。我试过用php。Php按照我的预期工作,但仍然无法正常工作。我们应该发布php数组。localhost/index.php拆分并使用它。显示您的c#代码(甚至不工作)也许这是一个输入错误,而不是在您的实际代码中,但仅供参考,在php数组中,它应该是“a”=>“1”而不是“a”->“1”您是否签入了Fiddler。。他们都在发送相同的数据。。如果没有,有什么区别呢?我正试着用C#来做。我试过用php。Php按照我的预期工作,但仍然无法正常工作。我们应该发布php数组。localhost/index.php拆分并使用它。
<?php
$postArray=array("a"=>"1","b"=>"2","c"=>3);
....
curl_setopt($curl,CURLOPT_POSTFIELDS,$postArray);
...
?>
string boundary = "-----------------------------" + DateTime.Now.Ticks.ToString("x");
HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create("localhost/index.php");
webrequest.CookieContainer = cookies;
webrequest.ContentType = "multipart/form-data; boundary=" + boundary;
webrequest.Method = "POST";
webrequest.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; tr; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13";
webrequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
NameValueCollection n1 = new NameValueCollection();

n1.Add("a", "1");
n1.Add("b", "2");
n1.Add("c", "3");

using (var requestStream = webrequest.GetRequestStream())
using (var writer = new StreamWriter(requestStream))
{
    writer.Write("POST_DATA=" + n1);
}

using (var responseStream = webrequest.GetResponse().GetResponseStream())
using (var reader = new StreamReader(responseStream))