Мне нужно отправить данные из приложения C # WinForms на страницу PHP. Я использую WebClient с примером кода ниже:
using (WebClient client = new WebClient())
{
NameValueCollection values = new NameValueCollection();
values.Add("menu_parent", null);
string URL = "http://192.168.20.152/test.php";
byte[] response = client.UploadValues(URL, values);
string responseString = Encoding.Default.GetString(response);
MessageBox.Show(responseString);
}
Что касается PHP, я выполняю простое условие IF, чтобы проверить, является ли menu_parent
NULL или нет, с помощью этого очень упрощенного кода:
<?php
$parent = $_POST['menu_parent'];
if ($parent === null)
echo "menu_parent is null";
else
echo "menu_parent is: <".$parent.">"; // This prints out.
if (is_null($parent))
echo "menu_parent is also null";
else
echo "menu_parent is also: <".$parent.">" // This also prints out.
if ($parent === "")
echo "menu_parent is empty string"; // This also prints out.
else
echo "menu_parent is not empty";
?>
Проблема в том, что NULL
значение menu_parent
преобразуется в пустую строку на странице PHP. Я проверил MSDN страницу о методе WebClient.UploadValues , а также NameValueCollection class . На странице сказано, что NULL
значение принято. Как выставить нулевое значение? Является ли значение NULL
неприемлемым в этом случае?