CakePHP(1.2.1.8004)でPCサイトと携帯サイトのログインページ作成メモ。
HTML出力振り分け(2)セッションの設定で投稿したコードにログイン関連の処理を追加します。

今回は、userモデルの作成まで行います。

Index

  1. データベース定義
  2. テスト用データ挿入
  3. CakePHPデータベース接続設定
  4. userモデル作成

データベース定義

MySQL(5.0.20a)を使用します。

データベース作成とユーザー追加
SQL:
  1. CREATE DATABASE mbcakedb DEFAULT CHARACTER SET utf8;
  2. GRANT ALL ON mbcakedb.* TO mbtestuser@localhost IDENTIFIED BY 'pass12ythgb';

ユーザーテーブルは、次のようなものを使用します。

SQL:
  1. CREATE TABLE `t_users` (
  2.   `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  3.   `serial_number` varchar(250) DEFAULT NULL,    -- 携帯端末ID
  4.   `carrier_short_name` varchar(32) DEFAULT NULL,
  5.   `easy_logon` tinyint(1) DEFAULT '0',          -- 簡単ログインを有効にするかどうか
  6.   `username` varchar(128) NOT NULL,
  7.   `email` varchar(128) NOT NULL,
  8.   `password` varchar(128) NOT NULL,
  9.   `nickname` varchar(250) NOT NULL,
  10.   `created` datetime NOT NULL,
  11.   `modified` datetime NOT NULL,
  12.   PRIMARY KEY  (`id`)
  13. )

テーブル名の先頭についている't_'は、CakePHPのDATABASE_CONFIGで指定するprefixです。

テスト用データ挿入

テスト用のユーザーデータをテーブルに追加します。

SQL:
  1. INSERT INTO t_users(serial_number,username,email,password,nickname,easy_logon) VALUES('000000000000000','docomosim','test@localhost',MD5('test1'),'ドコモシミュ',1);
  2.  
  3. 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:
  1. class DATABASE_CONFIG {
  2.  
  3.   var $default = array(
  4.     'driver' => 'mysql',
  5.     'persistent' => false,
  6.     'host' => 'localhost',
  7.     'login' => 'mbtestuser',
  8.     'password' => 'pass12ythgb',
  9.     'database' => 'mbcakedb',
  10.     'prefix' => 't_',
  11.   );

userモデル作成

app/models/user.phpを作成します。

app/models/user.php 抜粋
PHP:
  1. class User extends AppModel
  2. {
  3. }

次回、ログインフォームと簡単ログインのサンプルを投稿予定です。
続きは、こちら。(2009/02/08)

関連投稿

Tags: , , ,

コメントをどうぞ