Отправка строки на страницу PHP и отображение страницы PHP в строке - PullRequest
2 голосов
/ 18 февраля 2011

Я пытаюсь сделать так, чтобы на моей странице PHP отображалась строка, которую я создал с помощью функции в моем приложении C #, через System.Net.WebClient.

Это действительно так.В простейшей форме у меня есть:

WebClient client = new WebClient();  
string URL = "http://wwww.blah.com/page.php";
string TestData = "wooooo! test!!";

byte[] SendData = client.UploadString(URL, "POST", TestData);

Итак, я даже не уверен, что это правильный способ сделать это ... и я не уверен, как на самом деле получить эту строку иотобразить его на странице PHP.что-то вроде print_r (SendData) ??

Любая помощь будет принята с благодарностью!

Ответы [ 2 ]

9 голосов
/ 28 марта 2013

Используйте этот код для отправки строки из C # с помощью метода Post

       try
       {
            string url = "";
            string str = "test";
            HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
            req.Method = "POST";
            string Data = "message="+str;
            byte[] postBytes = Encoding.ASCII.GetBytes(Data);
            req.ContentType = "application/x-www-form-urlencoded";
            req.ContentLength = postBytes.Length;
            Stream requestStream = req.GetRequestStream();
            requestStream.Write(postBytes, 0, postBytes.Length);
            requestStream.Close();

            HttpWebResponse response = (HttpWebResponse)req.GetResponse();
            Stream resStream = response.GetResponseStream();

            var sr = new StreamReader(response.GetResponseStream());
            string responseText = sr.ReadToEnd();


        }
        catch (WebException)
        {

            MessageBox.Show("Please Check Your Internet Connection");
        }

и php page

 <?php 
    if (isset($_POST['message']))
    {
        $msg = $_POST['message'];

        echo $msg;

    }

   ?>
6 голосов
/ 18 февраля 2011

Есть две половины для публикации. 1) код, который отправляет на страницу и 2) страницу, которая получает его.

за 1) Ваш C # выглядит нормально. Я бы лично использовал:

string url = "http://wwww.blah.com/page.php";
string data = "wooooo! test!!";

using(WebClient client = new WebClient()) {
    client.UploadString(url, data);  
}

для 2) На вашей странице PHP:

if ( $_SERVER['REQUEST_METHOD'] === 'POST' )
{
    $postData = file_get_contents('php://input');
    print $postData;
}

Читайте о чтении данных поста в PHP здесь:

...