2011-08-06 6 views
0

サーバからSQLデータベースホストを取得しました。データへのアクセスとデータの両方を必要とします。私の質問は、これを行うための最善の方法は何ですか?もしあなたがもっと良い方法があると思えば、私はsqlを落とす準備ができているだろう。しかし、多くのユーザが同じ時間にデータにアクセスできるということを知っている最善の方法だが。リモートSQLデータベースとiphoneアプリとのやりとり

まあ、私はいくつかのアドバイスが必要です。脆弱性がシステムに残すためにバインドされていますように、>アプリ・コネクション - -

乾杯

答えて

0

私はあなたのデータを操作するためにあなたのサーバー上にAPI(アプリケーションプログラミングインターフェイス)を作成することをお勧めします。最も単純なのは、httpで動作するものです。 このようにして、各ユーザーのアクセスを管理することもできます。

例: サーバーにphpとcfpropertylistライブラリがインストールされています。

if ($_GET['action'] == 'lists') { 
    // connect to database and fetch data 
    // transform it to properly list using cfpropertylist library and print it 
} 

オンiPhoneインストールASIHTTPRequestライブラリ。 これにより、サーバーへの要求を簡単に処理できます。

NSURL *url = [NSURL URLWithString:@"http://server?action=lists"]; 
__block ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url]; 
[request setCompletionBlock:^{ 
    NSData *responseData = [request responseData]; 
    id structure = [NSPropertyListSerialization propertyListFromData:responseData 
                mutabilityOption:NSPropertyListImmutable 
                   format:NULL 
                errorDescription:nil]; 
}]; 
[request setFailedBlock:^{ 
    NSError *error = [request error]; 
}]; 
[request startAsynchronous]; 
+0

あなたの答えをありがとうが、もう少し具体的にできますか?簡単な例がありますか?乾杯 – Bob

+0

ちょっと@Bob、私は簡単な例を追加しました。 –

+0

Thx。私はついにASIHTTPRequestクラスを使用し、POSTを使用してサーバーにデータを送信し、中間xmlファイルを使用してサーバーからデータを取得しました。それは素晴らしい作品です! – Bob

0

は、SQL <を行うことはありません代わりに制御する(例えばphpaspまたはjspなど)のWeb言語のいくつかのタイプを使用します要素間の通信。

これは、アプリケーションが実際に重要な部分をデータベースに転送してから、誰もが共有できるようにデータベースの資格情報を提示せずに必要なデータを返すというWebアプリケーションと通信することになります。

+0

はい、実際には表示されません。 phpを使って、私はどのように私のアプリにデータを転送することができます(私はそれがウェブ開発には良いとは思いません、私はそれが嫌いです!)。データの書き込みはどうですか? iAppから投稿でそれらを送信しますか? – Bob

+0

'Objective-C'の' JSON'(http://code.google.com/p/json-framework/)を使って 'PHP/MySQL'から' jsonencode'dデータを転送し、通常の 'POST'リクエストを介して' PHP'を実行します。 – ninetwozero

関連する問題