WAMP PHP 页面未从 C# 代码接收数据


WAMP PHP page not receiving data from C# code

我非常确信这里已经提出了类似的问题,但我现在正在失去理智。

我有一个非常简单的 C# 和 PHP 代码,我写它只是为了测试我的环境。有两个部分,第一个是应该发布一些数据的 C# 代码,第二个是应该接收数据的 PHP。在VS2010的html可视化工具中,我可以看到我所期望的内容,但我无法在Web浏览器中看到相同的内容。我必须承认,就发布到 php 页面而言,我有点新手,所以任何帮助将不胜感激。

第 1 部分:C# 代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
namespace ConsoleApplication5
{
    class Program
    {
        static void Main(string[] args)
        {
            string _url = "http://localhost/data.php";
            string _data = "woooooo! test!";
            for (; ; )
            {
                using (WebClient _client = new WebClient())
                {
                    _client.Headers[HttpRequestHeader.ContentType] = 
                         "application/x-www-form-urlencoded";
                    string _html = _client.UploadString(_url, _data);
                }
            }
       }
   }
}

第 2 部分:PHP 代码:

<?php 
    echo "bah bah bings";
var_dump(file_get_contents("php://input"));
if ($postdata = file_get_contents("php://input"))
{
    echo "Works";
}
else {
    echo "Doesn't work";
}   
echo($postdata);
?>

并像这样调用页面:

http://localhost/data.php

这就是我想要实现的目标:将字符串发送到 PHP 页面并让 PHP 页面显示字符串

谢谢:)

但我无法在网络浏览器中看到同样的东西。

你通过方法 POST 从 C# 发布数据,浏览器通过方法 GET 调用你的 php,当 GET php 没有收到来自 php://input 的任何数据

您存储了开机自检数据,例如

if ($postdata = file_get_contents("php://input"))
{
    echo "Works";
    file_put_contents('mypathstore/data.txt', $postdata);
}
else {
    echo "Doesn't work";
}

在另一页

<?php
echo file_get_contents('mypathstore/data.txt');

对。我明白了。以上工作得很好。我的困惑来自于我想在浏览器中看到这个,而这不是必需的。它是一个PHP脚本,服务器端,其目的是将数据插入MYSQL后端。谢谢所有的帮助。就像一个魅力。