CakePHP(1.2.1.8004)でPCサイトと携帯サイトのログインページ作成メモ。
HTML出力振り分け(2)とセッションの設定で投稿したコードにログイン関連の処理を追加します。
今回は、userモデルの作成まで行います。
Index
データベース定義
MySQL(5.0.20a)を使用します。
データベース作成とユーザー追加
SQL:
-
CREATE DATABASE mbcakedb DEFAULT CHARACTER SET utf8;
-
GRANT ALL ON mbcakedb.* TO mbtestuser@localhost IDENTIFIED BY 'pass12ythgb';
ユーザーテーブルは、次のようなものを使用します。
SQL:
-
CREATE TABLE `t_users` (
-
`id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
-
`serial_number` varchar(250) DEFAULT NULL, -- 携帯端末ID
-
`carrier_short_name` varchar(32) DEFAULT NULL,
-
`easy_logon` tinyint(1) DEFAULT '0', -- 簡単ログインを有効にするかどうか
-
`username` varchar(128) NOT NULL,
-
`email` varchar(128) NOT NULL,
-
`password` varchar(128) NOT NULL,
-
`nickname` varchar(250) NOT NULL,
-
`created` datetime NOT NULL,
-
`modified` datetime NOT NULL,
-
PRIMARY KEY (`id`)
-
)
テーブル名の先頭についている't_'は、CakePHPのDATABASE_CONFIGで指定するprefixです。
テスト用データ挿入
テスト用のユーザーデータをテーブルに追加します。
SQL:
-
INSERT INTO t_users(serial_number,username,email,password,nickname,easy_logon) VALUES('000000000000000','docomosim','test@localhost',MD5('test1'),'ドコモシミュ',1);
-
-
INSERT INTO t_users(serial_number,username,email,password,nickname,easy_logon) VALUES('123456789012345','sbsim','test@localhost',MD5('test2'),'SBシミュ',1);
CakePHPデータベース接続設定
app/config/database.php.defaultをもとに、app/config/database.phpを作成します。
app/config/database.php 抜粋
PHP:
-
class DATABASE_CONFIG {
-
-
'driver' => 'mysql',
-
'persistent' => false,
-
'host' => 'localhost',
-
'login' => 'mbtestuser',
-
'password' => 'pass12ythgb',
-
'database' => 'mbcakedb',
-
'prefix' => 't_',
-
);
userモデル作成
app/models/user.phpを作成します。
app/models/user.php 抜粋
PHP:
-
class User extends AppModel
-
{
-
}
次回、ログインフォームと簡単ログインのサンプルを投稿予定です。
続きは、こちら。(2009/02/08)