Web客户端DownloadString为PHP输出空白

时间:2012-12-27 21:55:03

标签: c# php

好吧所以我有一个PHP脚本,它返回一个SQL表的内容并回显它们,当我加载页面时它工作正常但是当我通过C#下载字符串时它出现空...如果我输出的东西除了SQL表的结果也可以。

我也尝试过WebRequests而没有运气。

为什么不能正常工作?

输出也只是一行。

这是我的PHP代码

<?php  
$database="example";  
mysql_connect ("localhost", "username", " ");  
@mysql_select_db($database) or die( "Unable to select database");  
$result = mysql_query( "SELECT * FROM names" )  
or die("SELECT Error: ".mysql_error());  
$num_rows = mysql_num_rows($result);  


while ($get_info = mysql_fetch_row($result)){  
foreach ($get_info as $field)  
echo $field;  
}  

?>  

C#代码

 HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create("http://10.0.0.3/list.php");
        myHttpWebRequest.MaximumAutomaticRedirections = 1;
        myHttpWebRequest.AllowAutoRedirect = true;
        HttpWebResponse response = (HttpWebResponse)myHttpWebRequest.GetResponse();
        using (Stream stream = response.GetResponseStream())
        {
            StreamReader reader = new StreamReader(stream, Encoding.UTF8);
            String responseString = reader.ReadToEnd();
            MessageBox.Show(responseString);
        }

这是制作的HTML(这是废话,但我只是在测试)

jacobsharkeypetergriffinTimPalmer123testlion ofnarnia  

奇怪的是,例如在PHP脚本中,如果我将“$ field”更改为类似“test”的东西,它可以完美地工作并通过表结果的数量输出测试

1 个答案:

答案 0 :(得分:0)

尝试这个来获取HTML,它的代码要少得多,而且可能更清晰。

string str = string.Empty;

WebClient client = new WebClient();
Stream data = client.OpenRead("http://www.google.com");
StreamReader reader = new StreamReader(data);
str = reader.ReadToEnd();