このブログのチュートリアルを順に読み進めてくださった方なら、このチュートリアルがUITableVIewを優先的に取り組んできたことをご存知かと思います。
この理由としては、多くのアプリケーションが、このシンプルなコントロールを使って開発されているからです。
今回はUITableViewの最後のチュートリアルとして、今までのチュートリアルで学んできたことをすべて使い、SQLiteの技術を追加し、ToDoリストを作成していきます。
また、多くの機能を持ったテーブルセルを追加し、iPhoneが提供している他のコントロールについても学んでいきます。
過去の記事を既読の方を想定していますので、まだの方は、そちらの記事に先に目を通されることをおすすめします。
このチュートリアルは、いくつかのシリーズから成り立つので、過去の記事に比べ少し長くなります。この最初のチュートリアルで学ぶことは以下です。
今回学ぶこと:
Navigation-Based Application の新規作成
データベースの作成
プロジェクトにデータベースの追加
SQLite3のフレームワークを追加
ToDoクラスのオブジェクトの作成
データベースの初期化
…
セッションや共用SSLの問題を考えずに、普通にリンクを貼るのであれば、Zencartのデフォルトで設定されているURL(http://domain_name.com/index.php?main_page=contact_us など)をそのままテンプレート内に張り付けることで動作しますが、この方法でリンクを貼るとクッキーの使えないブラウザで正常にセッションが動作しなくなります。Zencartのセッションについてはこちらの記事で触れています。
セッションを維持するリンクの貼り方は状況によっていくつか考えられるので、順に説明していきたいと思います。目次
1.Zencart(filenames.php)にもともと定義されているページへのリンクの貼り方
■形式 非SSLの場合 :<a href="<?php echo zen_href_link(FILENAME_CONTACT_US, '', 'NONSSL'); ?>">お問い合わせ</a>SSLの場合 :
<a href="<?php echo zen_href_link(FILENAME_LOGIN, '', 'SSL'); ?>">ログイン</a>この場合は、「FILENAME~」となっている箇所を includes/filenames.php に定義されている名前と同じものを設定することになります。 SSLにするかどうかの設定は「SSL」または、「NONSSL」を記述します。
2.Zencart(filenames.php)にもともと定義されていないページへのリンクの貼り方
例えば、「http://domain_name.com/index.php?main_page=index&cPath=14」にリンクを張りたい場合などです。 ■形式<a href="<?php echo zen_href_link("index&cPath=14", '', 'NONSSL'); ?>">ページ名</a>この場合は、「index&cPath=14」となっている箇所を編集します。 URLで 「index.php?main_page=」 以降の箇所を赤字の箇所に指定することで動作します。 SSLにするかどうかの設定は「SSL」または、「NONSSL」を記述します。
3.オリジナルのphpプログラムの中で動かすような場合
例として、カテゴリIDを取得し、自動でカテゴリ名へリンクを設置するようなプログラムを作るとします。そのリンク箇所にセッションが正常に引き継げるように設定します。 ■形式<a href="http://domain_name/index.php?main_page=index&cPath=<?php echo $categories_id ; ?>&<?php echo zen_session_name(); ?>=<?php echo zen_session_id() ; ?>">リンク</a>Zencart内で、zen_session_nameというのは「zenid」のことです。zen_session_idというのはzenidの値のことです。 このやり方については、クッキーの設定に関わらず、URL内のzenidにてセッションを引き継ぐ方法ですが、セキュリティ面を考慮すると、もう少しスマートなやり方があるかもしれません。
この投稿へのコメント