ios — nsurlsession отправляет значение label.text на сервер php и возвращает значение JSON

Мне нужно правильно обращаться с меткой в ​​моем потоке приложений. Как я могу это сделать? Шаги

  • INPUT: текстовая метка
  • преобразовать в нижний регистр
  • удалить пробелы
  • отправить на сервер PHP
  • присваивать значение $ в SQL
  • отправить запрос в базу данных сервера
  • ВЫХОД: вернуть результаты (в формате JSON) в мое приложение

В настоящем дизайне есть 11 групп, которые я отправляю на другой веб-адрес в зависимости от нажатой страницы; Я хотел бы увеличить до 102 групп.

Я подумал, что можно было бы использовать nsurlsession, чтобы опубликовать мой label.text (имя группы), отправить его на мой сервер, вставить его в мой код SQL и получить результат поиска.

// Toggle View Button (on button click open next view controller and populate table view with group matching data)

— (IBAction) ShowModels: (id) отправитель {

// 1. URL of the server page i want to send data to.
NSURL *url = [NSURL URLWithString:@"http://www.website.com/group.php"];

// 2. some how adapt this code to send grouplabel.text in plain text in lowercase without spaces.
NSDictionary *params = @{@"tableName": _groupLabel.text};

// 3. Adapt code to post the value of grouplabel.text to server.
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPMethod:@"POST"];

// 4. use a task to upload the data to the server and then have another task to recieve the completed data.
NSURLSessionDataTask *task = [[NSURLSession sharedSession] dataTaskWithRequest:request
completionHandler:^(NSData *data,
NSURLResponse *response,
NSError *error)
{
if (!error)
{
NSLog(@"Status code: %li", (long)((NSHTTPURLResponse *)response).statusCode);
}
else
{
NSLog(@"Error: %@", error.localizedDescription);
}
}];

// 5. Run the completed task.
[task resume];

}

Что мне нужно изменить на этих этапах?

Серверный код:

<?php

//connect to database.
include '../Includes/db-connect.php';

//set the table name variable

$table = "name"; //attach label.text value to this...

//Select all distinct values from table name.
$sql = "SELECT DISTINCT make FROM $table";

$result = mysqli_query($conn, $sql) or die ("Error in selecting" . mysqli_error($conn));

//create an array
$emparray = array();
while($row =mysqli_fetch_assoc($result))
{
$emparray[] = $row;
}

//echo json_encode($emparray); //TESTING.. implement to check response from query.

//Write to json file
$fp = fopen('name.json', 'w');
fwrite($fp, json_encode($emparray));
fclose($fp);

// Close connection.
mysqli_close($conn);
?>

0

Решение

Задача ещё не решена.

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

Других решений пока нет …

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