2014-10-24 3 views
0

를 PHP로 요즘 문제로 실행 :후 데이터가

C# 코드 :

string URI = "http://cannonrush.tk/UpdateLogFile.php"; 
string myParameters = "text=test123"; 

using (WebClient wc = new WebClient()) 
{ 
    wc.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded"; 
    string HtmlResult = wc.UploadString(URI, myParameters); 
    Console.WriteLine(HtmlResult); 
} 

PHP 파일 : 이제

<?php 
if (isset($_GET['text'])) { 
    $file = "LogFile.txt"; 
    $handle = fopen($file, 'a') or die('ERROR: Cannot write to file: ' . $file); 
    date_default_timezone_set('Europe/Amsterdam'); 
    $data = '~ ' . date('l jS \of F Y h:i:s A') . '>> ' . $_GET['text'] . "\n\n"; 
    fwrite($handle, $data); 
    fclose($handle); 
    echo "SUCCESS"; 
} else { 
    echo "ERROR: Access forbidden without text"; 
} 
?> 

나는 위의 C# 코드를 실행할 때마다, 내가 수를 이 출력물은 다음과 같습니다.

ERROR: Access forbidden without text

나는 merous 버전을 사용하여 C#에서 PHP로 데이터를 게시 할 수 있지만 아무것도 작동하지 않는 것 같습니다.

아이디어가 있으십니까?

+0

PHP를 모르지만 UploadString 메서드가 POST를 사용하고 본문에 문자열을 넣을 것입니다. PHP가 GET을 기대하고 쿼리 문자열을 찾고있을 가능성이 있습니까? http://stackoverflow.com/questions/5415224/how-to-set-get-variable –

답변

0

$ _GET [ "text"]를 PHP 파일에서 $ _POST [ "text"]로 변경하거나 C# 코드에서 UploadString() 대신 DownloadString()을 사용하십시오.

0

$_GET은 GET 요청에 채워집니다, 그래서 UploadString이 작동하지 않습니다 :

Uploads the specified string to the specified resource, using the POST method.

를 허용하거나 동사 대신 $_REQUEST을 사용합니다.

관련 문제