FMCakeMixってウマイの?
Kentaro Suzuki(2012年12月改訂版)
これは何?2012年12月22日に行われたカスタムWeb勉強会で発表した資料を加筆・修正したものです
FileMaker ServerのカスタムWeb公開機能とCakePHPを利用してWeb公開を行うためのチュートリアルです
このような方向けですインスタントWeb公開を使ってみたけど限界を感じた
カスタムWeb公開にトライしたいけど…
HTML、CSS、PHPをよく知らない
何から初めたら良いか分からない
目的
カスタムWeb公開(XML公開)を始める
FileMakerデータベースのデータをWebブラウザに表示する
お題必要なもの
インストール&デプロイ
データベースの作成
Web側のコーディング
動作確認
次のステップ
必要なものOS X Mountain Lion搭載のMac
ApacheとPHP
FileMaker Pro 12 (Advanced)FileMaker Server 12 (Advanced)CakePHPFX.phpとFMCakeMix
テキストエディタ
サンプルファイル
下記URLよりダウンロードできます
http://atarime.lolipop.jp/samplefiles/cakephp-members-sample.zip
ApacheとPHP
OS Xならインストール済
でもお高いんでしょう?
FileMaker Server
無料評価版から始めよう
無料評価版(30日間無料)
FileMaker Server Advancedの機能が制限なしで利用できる
TechNetに参加するとテスト用途限定のDevelopment LicenseのFileMaker Server Advancedが利用できる(接続クライアント数は3を上限)
FileMaker Technical Network9,450円/年で参加
CakePHP
Webアプリケーションフレームワーク
FX.php
FileMaker ProのDBに接続するためのライブラリクラス
FMCakeMix
CakePHPとFileMakerを接続するデータソースドライバー
インストール&デプロイ
ApacheApacheの設定ファイルであるhttpd.confを編集し下記を設定
PHPを有効にする
.htaccessの使用を許可する
Apacheを起動
PHPを有効にするviエディタ等でhttpd.confを編集
ターミナル.appで下記コマンドを入力
$ sudo vi /etc/apache2/httpd.conf117行目付近の#LoadModule php5_module libexec/apache2/libphp5.soのコメント(#)を外す
.htaccessの使用を許可同様にhttpd.confを編集
<Directory "/Library/WebServer/Documents">セクションにあるAllowOverride NoneをAllowOverride Allに変更(216行目付近)
Apacheの起動ターミナル.appから下記コマンドを実行
$ sudo apachectl start既にApacheが起動中の場合は
$ sudo apachectl restart
FileMaker Serverインストール
展開(デプロイメント)
XML公開を有効にする
データベースサーバーの起動
Web公開の開始
CakePHP
CakePHP解凍してできたディレクトリをmembersにリネームして、/Library/WebServer/Documents/へコピー
/Library/WebServer/Documents/ members/app/tmp以下をApacheユーザーが書き込みできるよう権限を変更
CakePHP/Library/WebServer/Documents/ members/app/Config/core.phpの下記の値を変更
Security.salt
Security.cipherSeed
FX.php
FX.php/Library/WebServer/Documents/ members/app/Vendor/へコピー
datasource_classesFX_constants.phpFX_Error.phpFX.phpimage_proxy.php
FMCakeMix
FMCakeMixfilemaker.phpを/Library/WebServer/Documents/members/app/Model/Datasource/Database/へコピー
Databaseディレクトリは作成する
データベースの作成
なんちゃって個人情報
なんちゃって個人情報
タブ区切り形式等でダウンロード
データベースの作成ダウンロードしたデータをFileMaker ProにドロップしてDBを作成
fmxml拡張アクセス権をセット
テーブル名とレイアウト名はmembers
主キーとして利用するidフィールドを追加
Web側のコーディング
database.php
/Library/WebServer/Documents/ members/app/Config/database.phpデータベースの接続情報を記述
Controller/Library/WebServer/Documents/ members/app/Controller/MembersController.phpモデルからデータを受け取りビューへ渡す流れを記述
Model
/Library/WebServer/Documents/ members/app/Model/Member.phpアプリケーションのロジックを記述
View
/Library/WebServer/Documents/ members/app/View/Members/index.ctpHTML等の出力を行う役割
routes.php
/Library/WebServer/Documents/members/app/Config/routes.phpURLをデザイン
動作確認
localhost/members/
次のステップ
ドキュメントを読もう
CRUDを実装しよう新規レコードの作成
レコードの表示(できましたよね)
レコードの更新
レコードの削除
参考URL
カスタムWeb勉強会 <http://www.famlog.jp/cwpstudy/>
参考URLFileMaker 無料評価版、アップデータのダウンロード | FileMaker http://www.filemaker.co.jp/support/downloads/FileMaker Technical Network https://fmdev.filemaker.com/
参考URLCakePHP: the rapid development php framework. Pages http://cakephp.org/yodarunamok/fxphp · GitHub <https://github.com/yodarunamok/fxphp>
参考URLmatsuo/FMCakeMix · GitHub <https://github.com/matsuo/FMCakeMix>なんちゃって個人情報 <http://kazina.com/dummy/>
参考URL
Welcome — CakePHP Cookbook v2.x documentation <http://book.cakephp.org/2.0/ja/index.html>