c # — if (isset ($ _ POST [‘Name’]) & amp; & isset ($ _ POST [‘Number’])) всегда возвращает false в переполнении стека

// xamarin.android c# code
void mButtonCreateContact_Click(object sender, EventArgs e)
{
WebClient client = new WebClient();
Uri uri = new Uri("http://www.mydomainname.com/abcd.php");
NameValueCollection parameters = new NameValueCollection();
parameters.Add("Name", txtName.Text);
parameters.Add("Number", txtNumber.Text);`
client.UploadValuesCompleted += client_UploadValuesCompleted;
client.UploadValuesAsync(uri, parameters);
}

Здесь я передаю два параметра после получения ввода от пользователя. Однако в коде PHP он всегда возвращает ложь в isset['Name'] функция и переходит в else заявление

if (isset($_POST['Name']) && isset($_POST['Number']))
{
$mName = $_POST['Name'];
$mNumber = $_POST['Number'];
echo 'true';
}
else
{
echo 'false';
}

0

Решение

Вам необходимо установить параметр запроса POST в WebClient.

1

Другие решения

Вы отправляете GET со значениями, если вы хотите использовать POST вместо этого назовите это так:

void mButtonCreateContact_Click(object sender, EventArgs e)
{
WebClient client = new WebClient();
Uri uri = new Uri("http://www.mydomainname.com/abcd.php");
NameValueCollection parameters = new NameValueCollection();
parameters.Add("Name", txtName.Text);
parameters.Add("Number", txtNumber.Text);
client.UploadValuesCompleted += client_UploadValuesCompleted;
client.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
client.UploadValuesAsync(uri, "POST", parameters);
}
1

ИСПОЛЬЗОВАТЬ, чтобы проверить с POST

client.UploadValuesAsync(uri, "POST", parameters);
0

Лучший способ — пользователь $_REQUEST, Что бы вы ни использовали, пост или получить.

-1
По вопросам рекламы [email protected]