Пустые данные при попытке отправить запрос метода Post

Я пытаюсь отправить мне запрос методом POST, однако, когда сообщение отправлено, данные, которые хранятся в базе данных, пусты, я не получаю отправленное мной значение. Это то, что я пытался:

NSString *queryString = [NSString stringWithFormat:@"http://localhost/json/insertData.php?username=test&password=test"];
NSMutableURLRequest *theRequest=[NSMutableURLRequest requestWithURL:[NSURL URLWithString: queryString] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
[theRequest setHTTPMethod:@"POST"];
NSURLConnection *con = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self];

Все хорошо, только когда данные отправляются и я проверяю базу данных, я получаю пустые значения, где ошибка, пожалуйста.

И это код моего файла PHP:

<?php

$host = "localhost";
$user = "root";
$pass = "root";
$db   = "Users";


$con = mysqli_connect($host,$user,$pass);

if(!$con)
{
die("Can't connect to mysql server!");
}

$db_select = mysqli_select_db($con,$db);

if(!$db_select)
{
die("Can't get the selected db!");
}

$id       = "11";
$username = $_POST['username'];
$password = $_POST['password'];
$email    = "[email protected]";
$gsm      = "91111111";

$query = "INSERT INTO Logins VALUES($id,'$username','$password','$email',$gsm)";
$query_exec = mysqli_query($con,$query);

if(!$query_exec)
{
die("Can't insert data");
}

?>

0

Решение

Вы передаете переменные username а также password через GET. В вашем PHP-скрипте вы должны использовать $_GET вместо $_POST:

$username = $_GET['username'];
$password = $_GET['password'];
0

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

в вашей ошибке показывает URL

http://localhost/json/insertData.php?username=test&password=test

вы можете ясно видеть username=test&password=test есть все данные. Это означает, что ваша форма method="get",

Так в вашем коде

$username = $_GET['username'];
$password = $_GET['password'];

Это решит вашу проблему.

0

Более конкретно, в форме с предыдущей страницы вы должны изменить тег формы отправки, чтобы включить method = «post».

<form method="post">
0

Поскольку на этот вопрос нет ответа, вы также сказали, что я изменил запрос $ _POST на $ _GET, однако, как я сказал, я хочу, чтобы он был не GET. Наконец, я получил ошибку, я должен кодировать данные, используя этот код:

[request setHTTPBody:[postString dataUsingEncoding:NSUTF8StringEncoding]];

После того, как я добавил этот код, данные были успешно добавлены.

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