ページ 11

iphoneデータをサーバーに保存

Posted: 2013年10月17日(木) 16:12
by shoshinsha
はじめまして。

iPhoneアプリを作っているのですが、 アプリ内で保存した配列やtouchメソッドによって得られたデータをiPhone内で保存ではなくサーバー上に保存して、使う時はサーバー上から呼び出すという流れをしたいのですが、どのような言語を勉強して行けばいいでしょうか? 大雑把な質問で申し訳ありません。

よろしくお願いします。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月17日(木) 17:18
by softya(ソフト屋)
借りるレンタルサーバーのサポートしてる環境に左右されます。
順当なところでは言語はperlかPHP、データベースはMySQLなどでしょう。それ以外の言語を選択をできる可能性もあります。
簡単なデータの保存ならPHPからSQliteなどを使えばMySQL等のデータベースサーバーも必要ありません。

「さくらのレンタルサーバ ライト」
http://www.sakura.ne.jp/lite.html
SQliteは、このぐらいから活用できます。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月19日(土) 18:14
by shoshinsha
迅速なご返答ありがとうございます。

ものすごく初心者なもので混乱しているのですが、 レンタルサーバーはいろいろ調べてXREA → http://www.xrea.com/  こちらに先ほど登録したのでこれでサーバーは借りられたのかと思います。 XREAはPerl,PHP,MySQL,PostgreSQL,SQLiteが使えると書いてあったので登録したのですが、、

サーバーに全く詳しくないので初歩的な質問になってしまうのですが、この借りたXREAのサーバーにアプリで保存した値を送り、呼び出したい時にサーバーから呼び出すという流れでよろしいのでしょうか?

ご返答お待ちしております

Re: iphoneデータをサーバーに保存

Posted: 2013年10月19日(土) 18:29
by softya(ソフト屋)
xreaは詳しくないですが無料だと自動で広告が差し込まれるのでhtmlでしか送受信できない可能性がありますね。
あと広告を表示しないで利用できないです。 → 表示しないと利用規約の違反でユーザー登録を抹消されます。
「「自動挿入広告」の FAQ - はやわかり XREA & CORESERVER」
http://www.hayawakari.com/xrea/?FAQ%2F% ... 0#w9fdbbc0

保存、呼び出しには当然ながら識別のためにユーザー名などのユーザー情報が必要です(IPアドレスは変化するので不可)。
あとはお好きな言語で、サーバ側のプログラムを書けば良いと思います。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月19日(土) 19:07
by shoshinsha
ご返答ありがとうございます!

htmlでしか送受信できないということは値を送受信できないということでしょうか。。。 すいません。。

ではまずやることとしては、MACBOOK PRO にPHP開発環境をインストールしてサーバー側のプログラム(値の受け渡し)を書くという流れでよろしいでしょうか!?
あと、xcode上ではサーバーに送るためにどのようなことを構築するのでしょうか?

質問ばかりで申し訳ありません。。 ご返答お待ちしております!

Re: iphoneデータをサーバーに保存

Posted: 2013年10月19日(土) 19:12
by h2so5
http://www.hayawakari.com/xrea/?FAQ%2FC ... P#e3d9a03b
無料アカウントでの禁止・制限事項

無料アカウントでは、以下の条件に該当する場合、CGI を外部から呼び出すことができません。

該当の CGI がアクセスカウンタ、アクセス解析など、使用の際の広告表示が不可能な CGI である。
該当の CGI の広告の位置を移動している (自動挿入広告に頼るか、広告を最上部に取り付ける必要があります)。
該当の CGI が高負荷がかかるゲーム CGI である。
該当の CGI がチャット CGI である。
「使用の際の広告表示が不可能な CGI」に該当するので規約違反です。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月19日(土) 19:16
by softya(ソフト屋)
> htmlでしか送受信できないということは値を送受信できないということでしょうか。。。 すいません。

アプリとしかやり取りしない場合は規約違反となると言うことです。
あくまでWEBサイト用でブラウザに表示されるのが前提と受け取って下さい。
つまり無料のxreaは、こういう用途に向いていないのです。

>ではまずやることとしては、MACBOOK PRO にPHP開発環境をインストールしてサーバー側のプログラム(値の受け渡し)を書くという流れでよろしいでしょうか!? 

「apache friends - xampp for mac os x」
http://www.apachefriends.org/jp/xampp-macosx.html
これなら環境が一発で入ると思います。

> あと、xcode上ではサーバーに送るためにどのようなことを構築するのでしょうか?

MacやiPhoneは持ってないので細かい所は分からないです。
socketなどの通信の勉強が必要ですね。

↓ こういう感じらしいです。
「メモ: iPhone でSocket 通信(クライアント側)」
http://s14.dcnblog.jp/pri/2011/04/iphon ... -59af.html

Re: iphoneデータをサーバーに保存

Posted: 2013年10月20日(日) 17:38
by shoshinsha
お二方ご返信ありがとうございます!
無料のxreaではできないということ理解しました!!

サーバーは大学のものを借りられるということなので大学のサーバーにデータ保存することにしたいのですが、、その場合、apacheはサーバー側(大学)でインストールしてなにか行うのでしょうか?

また大学のサーバーを借りるとなると何か必要な情報はありますか?(サーバーの情報(パスワード、IPアドレスなど))

質問ばかりですがよろしければご返答お待ちしております。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月20日(日) 17:58
by みけCAT
かなり環境に依存する問題だと思います。
shoshinsha さんが書きました:その場合、apacheはサーバー側(大学)でインストールしてなにか行うのでしょうか?
Apacheが既にインストールされていれば、
指定されたフォルダ(例:/var/www/cgi-bin)にCGIのファイルをアップロードするだけでできるかもしれませんし、
.htaccessというファイルもアップロードする必要があるかもしれません。
shoshinsha さんが書きました:また大学のサーバーを借りるとなると何か必要な情報はありますか?(サーバーの情報(パスワード、IPアドレスなど))
最低限、サーバーのホスト名(www.google.co.jpみたいなやつ)またはIPアドレスが必要になると思います。
リモートアクセスするならFTPまたはSSHのユーザー名とパスワードが必要になることが多いと思います。
SSHならパスワードの代わりに鍵ファイルを使うかもしれません。
また、ファイル構造の情報(前述のCGIファイルのアップロード先など)も必要だと思います。

(修正理由:ホスト名にhttp://はつけない)

Re: iphoneデータをサーバーに保存

Posted: 2013年10月20日(日) 18:13
by softya(ソフト屋)
>サーバーは大学のものを借りられるということなので大学のサーバーにデータ保存することにしたいのですが、、その場合、apacheはサーバー側(大学)でインストールしてなにか行うのでしょうか?

それこそ大学のサーバー管理責任者に聞いて下さい。そんなに勝手なことは出来ないと思います。
一台丸々借りられるとは思えませんので、プログラムを置かしてもらえる程度じゃないでしょうか。

>また大学のサーバーを借りるとなると何か必要な情報はありますか?(サーバーの情報(パスワード、IPアドレスなど))

それが分からない人がサーバーを設定するのは大変危険です。
踏み台にされて大学内のLANに侵入される恐れがあるので外部公開とかはしない方が良いと思います。と言うかさせてもらえるとは思えません。

無線LANでiPhoneと通信するぐらいじゃないでしょうか。
あるいは、限定された条件で外部公開です。この場合はサーバー設定はせずにプログラムだけを作ります。
どれも大学のサーバー管理責任者に聞くべきことです。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月20日(日) 23:24
by shoshinsha
みけCATさん ご返信ありがとうございます。

なるほど環境に左右されるんですね。。 ではapacheがインストールされているか確認してみます! 
サーバーのホスト名などもかくにんしてみます。

学校でないところからもiPhoneをつかって保存などしたいのでリモートアクセスということですよね。。 FTPやSSHのユーザー名なども確認してみます!

ここで確認したサーバーのホスト名やFTPのユーザー名などはサーバー側でapacheをつかってプログラムを組む際に使うと思うんですけど、なにか参考になるサイトなどありますでしょうか? キーワードとなる語句でも構いません!

ご返答お待ちしております。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月20日(日) 23:29
by shoshinsha
softya さん ご返答ありがとうございます。

一応研究室のサーバー場にデータを保存するように言われたのですが、、それはプログラムを置くという解釈でよろしいのでしょうか?

無線LANでiPhoneと通信し研究室のサーバーにデータを保存、サーバーからデータを読み出しということですかね。。

少し大学の方に聞いてみたいと思います。 ありがとうございます!

Re: iphoneデータをサーバーに保存

Posted: 2013年10月20日(日) 23:32
by みけCAT
shoshinsha さんが書きました:学校でないところからもiPhoneをつかって保存などしたいのでリモートアクセスということですよね。。 FTPやSSHのユーザー名なども確認してみます!
有名なサーバーのApacheは普通はHTTPサーバーとして使い、FTPやSSHのサーバーとしては使用しません。
私が言った「リモートアクセス」は、「リモートからサーバーに(CGIなどの)ファイルを転送する」という意味です。

もちろん、FTPやSSHのサーバーを使用し、FTPやSSH(SCP?)でファイルをiPhoneから保存しても構いませんが、
自分で実装するなら素直にHTTPを使用したほうが遥かに楽だと思います。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月20日(日) 23:54
by softya(ソフト屋)
> 学校でないところからもiPhoneをつかって保存などしたいのでリモートアクセスということですよね。。 FTPやSSHのユーザー名なども確認してみます!

みけCATさんの言われる通り、FTPやSSHは開発中のソースの転送やコマンドの送信に使うもので開発・デバッグ用です。
あと研究室のサーバーが外部公開されていない場合は、そもそもその野望は達成されません。
兎にも角にも研究室の詳しい人に聞いて下さい。やって良いこと悪いこと、出来る事出来ない事を全てです。

>ここで確認したサーバーのホスト名やFTPのユーザー名などはサーバー側でapacheをつかってプログラムを組む際に使うと思うんですけど、なにか参考になるサイトなどありますでしょうか? キーワードとなる語句でも構いません!

普通にhttpサーバにすると思うので、perlやphpの入門サイトを参考にして下さい。 ※ perlだとcgi入門と書かれたサイトです。
ベタな文字列で返すか、jsonなどで返すかは知識量次第です。
基本は文字列ですので文字列で返すのが一番簡単です。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月21日(月) 00:14
by shoshinsha
早速の返信ありがとうございます。

なるほど、理解しました!  勉強不足ですね、、すいません。。 

ではFTP、SSHは考えないで進めていこうと思います。

まだ大学に行けてないのでまずiPhone側のプログラムからとおもい構築しているのですが、、

現在はNSUserDefaultでタッチメソッドで取得した値を配列いれ、それをiPhone内部に保存しているのですが、この配列を サーバーに保存するとなるとどのように書き換えていくのでしょうか?
NSURLConnectionクラスを使っていくのかなと考えているのですが、方針が分からずです。。 

アドバイスもらえると嬉しいです。 ご返答お待ちしております。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月21日(月) 00:21
by softya(ソフト屋)
iOSユーザーではないので的はずれかもしれませんが、NSURLConnectionでGETを使えば簡単な送受信なら出来ると思います。
http://www.yahoo.co.jpなどを相手にhtmlを取得して動作を確認してみてはどうでしょうか?

Re: iphoneデータをサーバーに保存

Posted: 2013年10月21日(月) 00:21
by shoshinsha
softyaさん ご返信ありがとうございます。

確かに外部公開されてないと家にいるときなどじゃ使い物にならないのですねorz

大学に行き聞いてきます!

phpは最近から勉強しているのですが、perlとphpどちらが今回の内容に優れているかという「ことはありますでしょうか?

ご返答お待ちしております。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月21日(月) 00:28
by softya(ソフト屋)
世の中にはphp派とperl派がいまして、もうどちらが良いかは趣味の領域です。
あと、Java派、python派、ruby派などもいると思います。
この場合、研究室のサーバーを管理している人や詳しい人が何派かで決めたほうが良いと思います。

ちなみに自分のmacに既に書いたxamppを入れて研究室のサーバー似せることが出来れば自宅でテスト可能です。
xamppはperlやPHPなら何もしなくても使えます。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月21日(月) 00:40
by shoshinsha
ご返信ありがとうございます。

なるほど、、、 ありがとうございます。


自宅にサーバーがあるみたいな感覚でしょうか? 理解できずすいません。。

ご返答お待ちしております、

Re: iphoneデータをサーバーに保存

Posted: 2013年10月21日(月) 00:44
by softya(ソフト屋)
自分のmacがapacheの入ったWEBサーバーになります。

Re: iphoneデータをサーバーに保存

Posted: 2013年10月21日(月) 17:16
by shoshinsha
softya さん みけCAT さん    ご返信ありがとうございます!

いろいろアドバイスもらったので、勉強しながらやってきたいと思います!
またつまずくことがあると思うのでそのときはアドバイスもらえるとうれしいです!