А вот и фрагмент кода
// Create URL and gather parameter's to send to the server's php file
NSString *strURL = [NSString stringWithFormat:@"http://www.yoursite.com/checkForUpdates.php?lastUpdated=%@", lastUpdated];
// Send data to php file
NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString: strURL]];
// Store the data returned from the php file
NSString *strResult = [[NSString alloc] initWithData:dataURL encoding:NSUTF8StringEncoding];
После того, как вы настроите сервер на работу, это буквально весь код, который вам понадобится, чтобы начать получать обновления с вашего сервера.Один из способов сделать это - создать базу данных, которая будет содержать все ваши данные обновления, а также дату и время их добавления.Создайте php-файл на вашем сервере, который получает те данные (содержащие последнее обновление), которые мы только что отправили.PHP-файл выглядит примерно так:
<?php
// Database Data
$db_host = 'localhost';
$db_user = 'userName';
$db_pwd = 'password';
// Updates database
$database = 'updates_Database';
// check connection to database
if(!mysql_connect($db_host, $db_user, $db_pwd))
die("Cant connect to database");
// check selection of database
if(!mysql_select_db($database))
die("Can't select database");
// Get values from the URL's(Just requested by app)
$lastUpdated = $_GET['lastUpdated'];
// Query database for updates made after the user's last update
$sql_Query = mysql_query("SELECT * FROM Updates
WHERE dateAdded > '$lastUpdated'");
?>
Это позволит вам войти в вашу базу данных, взять данные (lastUpdated), которые вы только что отправили из приложения, и сравнить их с обновлениями в вашей базе данных.Затем вы можете получить данные из запроса, используя mysql_fetch_array($sql_Query)
, и, наконец, когда все закончится с вашими данными, вы можете просто пойти: echo($myData);
чтобы отправить ваши данные обратно в ваше приложение как NSString
КакЯ уже говорил, что некоторым разработчикам действительно нравится использовать JSON для выполнения этой части, потому что это очень просто и очень масштабируемо, однако в данный момент мне это действительно не нужно.Надеюсь, это поможет тебе, парень!Дайте мне знать, если вам нужны пояснения.