Я использую этот код:
public void sendPostData(string url, string data)
{
WebRequest req = WebRequest.Create(url);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
byte[] bytes = Encoding.UTF8.GetBytes(data);
req.ContentLength = bytes.Length;
Stream dataStream = req.GetRequestStream();
dataStream.Write(bytes, 0, bytes.Length);
dataStream.Close();
}
PHP для обработки POST:
<?php
if(@$_POST['filename'])
{
$data = filter_var($_POST['filename'], FILTER_SANITIZE_STRING);
$f = fopen($data.".txt", "w");
fclose($f);
}
?>
Я звоню по этому:
sendPostData("http://127.0.0.1/csharptest/index.php", "filename=myvariablehere");
Таким образом, все, что он делает, — это создает имя файла «myvariablehere» на сервере, а не сохраняет значение в myvariablehere, в котором хранятся данные.
Я хочу, чтобы значение «myvariablehere» хранилось на сервере.
Пожалуйста, помогите здесь!
Спасибо
Попробуйте этот код
public static class Upload
{
public static byte[] Post(string uri, NameValueCollection pairs)
{
byte[] response = null;
using (WebClient client = new WebClient())
{
response = client.UploadValues(uri, pairs);
}
return response;
}
}
а потом просто позвонить
var response = Upload.Post("URL", new NameValueCollection() {
{ "fileName", "test" },
});
Других решений пока нет …