作成日:2017-11-22, 更新日:2020-05-06
\config\config.php
ひとまず文字コードや時間絡みの対応をしておく。
▼下記のような感じにする。
~ 略 ~ 'language' => 'ja', // Default language 'language_fallback' => 'ja', // Fallback language when file isn't available for default language 'locale' => 'ja_JP', // PHP set_locale() setting, null to not set ~ 略 ~ 'encoding' => 'UTF-8', ~ 略 ~ 'default_timezone' => 'Asia/Tokyo', ~ 略 ~
※「ja_JP」じゃなく「ja-JP」が正解かもしれない(2020-05-06時点でWin10/Xampp環境だと「ja-JP」が正解)
app\config\routes.php
・「_root_」の値変更(変更しないならそのまま)
・「hello(/:name)?」をコメント(使うならそのまま)
app\bootstrap.php
・「\Fuel::$env」の設定
本番環境なら「\Fuel::PRODUCTION」。PHPエラーが出てもエラーメッセージが表示されない
それ以外なら「\Fuel::DEVELOPMENT~STAGING」のどれか。
DBの接続情報
「\Fuel::DEVELOPMENT」を指定した場合「app\config\development」の中の「db.php」
※「\Fuel::$env」で指定した値がPATHになる。
simpleauth(ログイン機能)
ログイン機能が不要なら無視。
\config\config.php
・「always_load」を探してコメント解除(「'always_load' => array(」と対になる「),」のトコ)
・「always_load」の中にある「packages」をコメント解除して「auth」追加
'packages' => array( 'auth', ),
ファイルのコピペ
・「packages\auth\config\auth.php」→「app\config\auth.php」
・「packages\auth\config\simpleauth.php」→「app\config\simpleauth.php」
app\config\auth.php
・saltの変更(適当な文字列)
app\config\simpleauth.php
・table_nameの変更(変更しなくてもいい)
・login_hash_saltの変更(適当な文字列)
テーブル
「app\config\simpleauth.php」の「table_name」でテーブル作成
CREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(255) NOT NULL, `password` text NOT NULL, `group` int(11) NOT NULL, `email` varchar(255) NOT NULL, `last_login` int(11) NOT NULL, `login_hash` varchar(255) NOT NULL, `profile_fields` text NOT NULL, `created_at` int(11) NOT NULL, `updated_at` int(11) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `username` (`username`), UNIQUE KEY `email` (`email`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
セッション
ファイルのコピペ
・「core\config\session.php」→「app\config\session.php」
app\config\session.php
・driverの変更(cookie, file, db):面倒ならfile。使い勝手が良さそうなのはdb。でもcookieのままでも良いかもしれない。
・expire_on_close(ブラウザを閉じたときセッション終了させるならtrue)
・expiration_time(有効期限(秒))
・rotation_time(セッションIDの更新タイミング(秒))
・あちこちにある「cookie_name」の変更(同一サーバ内に複数のFuelPHPを同居させるなら変更したほうがいい)
「driver=file」のとき
「'file'=>array()」の設定
・「path」の変更(そのままでもいい)
「driver=db」のとき
「'db'=>array()」の設定
・「table」の変更(そのままでもいい)
「table」の値でDBにテーブル作成(※「table」が「sessions」となっているとき)
CREATE TABLE IF NOT EXISTS `sessions` ( `session_id` varchar(40) NOT NULL, `previous_id` varchar(40) NOT NULL, `user_agent` text NOT NULL, `ip_hash` char(32) NOT NULL DEFAULT '', `created` int(10) unsigned NOT NULL DEFAULT '0', `updated` int(10) unsigned NOT NULL DEFAULT '0', `payload` longtext NOT NULL, PRIMARY KEY (`session_id`), UNIQUE KEY `PREVIOUS` (`previous_id`) ) ENGINE=INNODB DEFAULT CHARSET=utf8;
バリデーションの日本語化
参照:fuelphp validationのエラーを日本語表示
エラー関連
最初に表示さるかもしれないエラー
▼2018/08/03のときにインストして確認したら出てきたエラー
・FuelPHP 「Crypto key error」ってのが出てきた
その他
下記を使うときはconfigファイルを「coreフォルダ」から「app\config」にコピる
・ページネーション→参照「FuelPHPのページネーション」
・メール→参照「FuelPHPでメール送信」
・oil
関連項目
・FuelPHPのAUTH関連
・FuelPHPのセッションを使うときの下準備と豆知識
・FuelPHP 「Crypto key error」ってのが出てきた