FuelPHPによるMVCプログラミング入門

データベースを使う

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
FuelPHPでは、非常に簡単な手続きでデータベースにアクセスすることができます。ここでは、コントローラーとモデルを使って、データベースに接続する簡単な方法を紹介しましょう。
講師:
11:28

字幕

ここではデータベースを使うとして、FuelPHP から MySQL などのデータベースを扱う方法というのを紹介していきたいと思います。まずデータベースについて見ていきましょう。MAMP の「スタートページを開く」というこちらのボタンをクリックするとこちらのスタートページへジャンプします。phpMyAdmin というボタンをクリックすると、このように phpMyAdmin にジャンプします。Windows の Zamp の場合でも同じような手順でこちらの phpMyAdmin にジャンプすることができますので同じ手順でこちらの画面を表示してください。データベースというタブをクリックするとデータベースの管理画面に行きます。ここでは新しいデータベースを作成しておきましょう。fuelphp という名前にします。照合順序としてはUTF-8 に設定しますのでこちらの utf8_general_ci というものを選びます。作成するボタンをクリックしますとfuelphp というデータベースが出来上がりますのでさらにこれをクリックして中にテーブルを作成していきます。ここでは items としまして、ある商品を管理するためのデータベース、テーブルを作成しましょう。 カラムの数としては3つになります。ではここにまず、 プライマリーキーとしてid を設定し続いて名前を指定するためのitem_name、さらに価格を設定するための price というフィールド名を設定します。id と price がそれぞれ INT 、item_name は VARCHAR で500 となります。そして id についてはインデックスをPRIMARY としAI、オートインクリメントをチェックします。これでテーブルは完成です。では fuelphp でこちらの items というテーブルにアクセスするという手順を行ってみましょう。まずはファイルをアップロードします。MAMP の htdocs フォルダにfuelphp をインストールしてこちらに lesson03-01 という名前のフォルダを付けます。MAMP の環境設定についてもこちらの lesson03-01/public というフォルダをドキュメントルートに設定して再起動をかけます。ではまずは設定から行っていきましょう。fuel というフォルダの中のapp の中に config というフォルダがありこの中に db.php というファイルが収められています。 このファイルをダブルクリックして編集してください。標準で何か設定が書き込まれていますがこれを MySQL 用の設定に変更していきます。まず type という所が現在 pdo になっているのでこれを mysql に設定します。続いて connection の中を少し書き換えていかなければなりません。まず hostname という設定ですけれどもこれは MAMP のスタートページの所にこのようにソケットという設定があります。こちらの設定を利用していきます。コピーしていきましょう。ZAMP の場合でも同様にスタートページにこのような設定が書かれているのでそれをこのようにコピーしてください。続いて database の名前を設定します。ここでは fuelphp としました。続いて username、これはMAMP の場合は root、ZAMP の場合も同じく root になります。続いてが password、MAMP の場合は同じく root、ZAMP の場合は password は無しが標準になります。これで mysql の設定が完了です。persistent というのは接続を継続するかどうかの設定ということなんですがここでは基本的には false にしておくと良いでしょう。 false は継続的な接続をしないという設定です。続いて下の方を見ていきます。こちらの一番最初の設定は削除してtable_prefix はそのままcharset は utf8、そして enable_cashe はここでは false にします。profiling も false で結構です。さらに次に何かこのような設定がありますがこれについては無視していただいて構いません。これでデータベースへの接続の設定が完了しました。ファイルを保存します。ではここで contoroller を一つ作りましょう。ファイルを一つ新しいものを作っていただき作成をします。ファイルの内容をすべて削除してここでは class としてController_sample続いて public function としてaction を定義します。そして extends も Controller とします。ここでは index という標準の action を定義しましょう。ここでは動作を確認するためにプリントで hello とします。ではこの Controller をlesson03-01 のfuel の app のclasses の controller の中に今付けたこちらの controller の名前でファイルを保存します。 では動作を一度確認しておきましょう。http://localhost8888/ のsample という今付けた Controller の名前を指定します。画面に Hello と表示されればまずはこれで OK です。では次にモデルを作っていきます。データベースを扱うときにはモデルが必要になりますので必ず作りましょう。ページタイプは php にしてレイアウトは無し、ドキュメントタイプは適当なものを設定して内容をすべて削除します。ここで Model として Item というモデルを作るんですがextends の時に少し変わった指定をしておきましょう。バックスラッシュを打ってModel_(アンダーバー)のC-r-u-d クラッドと指定します。ここでいう Crud というのはCreate、Read、Update、Deleteの略称・頭文字をすべてつなげたもので、管理画面などを作る時の基本的なモデルになります。ここではこの Model_Crud というものを extends: 継承することでデータベースを非常に簡単に扱えるようにします。そしてここにはprotected static $_table_nameと指定します。 これはすべて決まり文句です。この Model_Item というモデルがなんというテーブルを使うのかというのを指定する記述です。ここには先ほど作った items というテーブルの名前を指定します。確認しておきましょう。phpMyAdmin のfuelphp の中にitems というテーブルを作成しました。ここと接続します。続いてこのテーブルはプライマリーキーがid という名前であることを確認しておいてprotected static $_primary_key というふうに設定します。これも決まり文句で、このテーブルのプライマリーキーを設定します。これでこのモデルは完成です。モデルをこちらの lesson03-01fuel の app のclasses の model の中に今付けた item というモデル名を付けて保存をします。では次にこの Controller と今作ったモデルを接続してデータベースのテーブルにデータを保存するという流れまでやってみたいと思います。まずそのモデルを割り当てます。ここでは Model_Item としてforge で割り当てます。そして次にデータベースに挿入するデータというのを作成していきます。 ここではデータとして空の配列を作った後data の item_name にいちご、data の price に 80 と設定します。そしてこの今作った配列を item の set ということでモデルに対して割り当てそして item を save します。ここでは save できたかどうかを確認するためにprint として saved としましょう。本来は view などを組み合わせてもっときちんとした保存できましたといったような画面も準備するのですが、ここでは model の使い方だけを学習できるようにview については省略します。ではこちらで動きを確認してみます。ウェブブラウザに切り替えて/sample を再度読み込みます。このときメッセージとしてsaved と表示されればデータベースに正常に値が保存されています。ではそのデータベースの内容を見ていきましょう。phpMyAdmin に切り替えてfuelphp の items というテーブルの内容を確認します。表示をクリックすると、今挿入した item_name のいちごprice が 80 というデータが入っています。id についてはオートインクリメントを設定していますので、自動的に1ずつ加算されて入っていきます。 この数字は人によって一致しないかと思いますので、例えば1だったり3だったりしてもあまり気にしないで構いません。これでデータベースと fuelphp を接続することができました。このようにデータベースに接続するとき少し手順としては面倒くさい作業が必要ですけれども一度設定してしまえば以降はデータベースを扱うのは非常に簡単になります。通常 php を使ってデータベースに接続するためにはSQL などを使わなければいけませんが、このようにモデルに Model_Crud などを使ってあげればその SQL を隠した状態でデータベースにアクセスすることができます。これにより非常に安全にデータベースを扱うことができますのでぜひこの手順を覚えて今後はデータベースを扱うときにこのようなモデルを使ったデータベースアクセスというのを行うようにしていきましょう。

FuelPHPによるMVCプログラミング入門

このコースでは、PHPのフレームワークのひとつであるFuelPHPを紹介していきます。フレームワークとはスクリプト開発における「足場」となるもので、近年のスクリプト開発においては非常に一般的な存在となっています。高速な開発スタイルをぜひとも身に付けていきましょう。

6時間19分 (47 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 3,990
発売日:2014年01月12日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。