2
,所以我有一個PHP腳本發送POST請求的數據到PHP腳本(它的名字是wiadomosci.php)與下面的代碼:從C#的水平
<?php
if (isset($_GET['wszystkie'])) //when I'm sending GET with wszystkie? paramets it send back all records in JSON - it works without any problems
{
$con=mysqli_connect("xxxl","xxxx","xxxx","xxxl");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
else
{
mysqli_query("SET CHARSET utf8", $con);
mysqli_query("SET NAMES 'utf8' COLLATE 'utf8_bin'", $con);
$tablica_wynikow = array();
$pobrane_dane = mysqli_query($con, "SELECT * FROM wiadomosci");
while($nt=mysqli_fetch_assoc($pobrane_dane)){
$tablica_wynikow[] = $nt;
}
header('Content-Type: application/json');
echo json_encode($tablica_wynikow);
}
mysqli_close($con);
}
if (isset($_POST["nowa_wiadomosc"])) //hre is post part
{
$tresc_wiadomosci = $_POST["nowa_wiadomosc"];
$con=mysqli_connect("xxx","xxx","xxx","xxxx");
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: ";
}
else
{
mysqli_query("SET CHARSET utf8", $con);
mysqli_query("SET NAMES 'utf8' COLLATE 'utf8_bin'", $con);
mysqli_query("INSERT INTO wiadomosci (tresc_wiadomosci) values ($tresc_wiadomosci)");
}
mysqli_close($con);
}
?>
這是我嘗試從C#發送POST應用程序:
System.Net.WebClient client = new System.Net.WebClient();
string result = client.UploadString("xxxxxxxx/wiadomosci.php?", "nowa_wiadomosc=TESTTTTT");
Console.WriteLine(result);
但因爲我得到一些隨機網站的HTML代碼,並沒有添加新的記錄。 如果有人能指出我正確的方向。
編輯:它的固定。我開始越來越多地使用debbuging,並且它在php腳本中的查詢構造是錯誤的,現在一切正常。
謝謝你們。
你是否已經選中此http://stackoverflow.com/questions/5401501/how-to-post-data-to-specific-url-using-webclient -in-c-sharp? – 2014-10-01 13:58:19
你沒有告訴WebClient你正在做一個帖子,所以它可能是默認的一個GET。你可以用'echo $ _SERVER ['REQUEST_METHOD']'和'var_dump($ _ GET)'來檢查這個問題。如果PHP通過GET請求被調用,那麼$ _POST將被**填充。 – 2014-10-01 13:59:57
根據引用的@SergeyMalyutin,嘗試刪除?。另外,你的xxxxxxxx應該像'http:// yourwebsite.com' – 2014-10-01 14:05:49