Мне нужно правильно обращаться с меткой в моем потоке приложений. Как я могу это сделать? Шаги
В настоящем дизайне есть 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);
?>
Задача ещё не решена.
Других решений пока нет …