我一直在网上试图找出一种方法,我可以通过新事件向我正在构建的iPhone应用程序发送更新。我很确定我可以用SQLite来做,但我没有找到任何可以提供帮助的教程。如果有人能给我一个线索,我将不胜感激。
答案 0 :(得分:0)
如果我错了,请纠正我,您希望能够在启动时检查数据库是否有任何新更新,如果是,请在新视图中向用户显示该事件并允许他们添加日历事件?
答案 1 :(得分:0)
现在这里有一段代码
// 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来完成部分因为它非常简单且可扩展,但我现在并不需要它。我希望这可以帮助你解决问题!如果您需要澄清,请告诉我。