ログイン画面を作る
ログイン画面を作る
管理画面はいろいろな機能が必要です。
■勉強の順番
1.新規登録をできるようにする
2.ログインできるようにする
■新規登録
・DB作り
・アクセス、インサートできるようにする
・モデルを作り、DBにアクセスする
・セレクト文を作り
・
データベースの設定
CodeIgniterの初期セットアップ 会員登録ページに必要なmodel作成 会員登録ページのcontroller作成
バリデーションの作成
会員登録ページのview作成 ログインページに必要なmodel作成 ログインページのcontroller作成 ログアウトページのcontroller作成 ログアウトページのview作成 |
初期セットアップ
CodeIgniterでは、予め「autoload.php」設定ファイルで自動ロード設定をしておく
コントローラクラスなどで 利用時にファイルを自動でロードできる。 全てのアクセスに対して共通でロードすることができます。
【注意点】
しかし、全てのアクセスで自動ロードされるため、あまり使われないものを設定して自動ロードしてしまうと 余計なオーバーヘッドが発生してしまいます。
自動ロードでは、一つのクラスに対し一つのインスタンスしかロードされません。
一つのクラスを複数のインスタンスで利用する場合では個別にロードする必要があります。
自動ロード設定はよく考慮してから行いましょう。
■自動ロードする、ライブラリクラスを設定
$autoload['libraries'] = array('Session', 'Mylibrary'); |
都度、使う場合は
$this->load->library('Session'); |
ヘルパーの追加
編集ファイル:application/config/autload.php
$autoload['helper'] = array('form','url'); |
■formヘルパー
FORMヘルパーは「 system/helper/form_helper.php 」ファイルで、HTMLのFROMで利用されるタグを出力する 関数が定義されています。
modelとコントローラ
モデルとコントローラの初期設定をします。
使用頻度の高い、ヘルパーとライブラリを先に読み込んでおく作業です。
まずはモデルを作る。
編集:application/models/User_model.php
application/models/User_model.php |
コードの状態
class User_model extends CI_Model { |
Controllers
編集:application/controllers/User.php
コントローラ
class User extends CI_Controller{ |
実際の開発ではmd5のみではセキュリティーは不十分です。今回は簡単のためmd5のみを使用しています。
model作成
会員登録に必要なメソッドをモデルに書いていきます。
会員情報をDBにインサートするメソッドです。コンストラクタの後に書くのが大事です。
public function set_user() |
POSTで受け取った各変数をuserテーブルにインサートしています。
この数行でインサートできるのが、コードイグナイターのすごいところです。
Passwordを受け取った時にmd5で暗号化しセキュリティーを向上させています。
実際の開発ではmd5のみではセキュリティーは不十分です。今回は簡単のためmd5のみを使用しています
Controller作成
ファイルの作成:aplication/controllers/User.php
public function index() |
Flashdataは一度呼び出されるとデータが自動的にクリアされるセッションです。
管理画面全体
ちなみに管理画面で必要なページというと
・Login画面
・検索機能つき一覧画面
>検索項目入力フォーム
>検索内容ヴァリデーションチェック
>一覧表示
>ページング
>入力サポート(日付設定ならカレンダーが出る、など)
■新規登録(編集)
>検索項目入力フォーム
>検索内容ヴァリデーションチェック
>入力サポート(日付設定ならカレンダーが出る、など)
だけど、いきなりここから着手するなんて無理。
一連の作業が完結するサイトを作るところから始めるといいかも。
【まずは】
一覧→編集→バリデートチェック→保存→削除 |
ここから作ると良い。
tank_authを使う
認証ライブラリがある。
・ユーザー名でもメールアドレスでもログイン可能(configファイルで調整可能)
・簡単な登録か、メールによるアクティベーション(オプション)
・ログイン情報を覚えておく機能
・パスワード忘れ対応(ユーザーは再アクティベーションする際に新しいパスワードに変更)
・パスワードやメールアドレスの変更をユーザー自身で行う
・アカウントがアクティブであっても、メールアドレスやパスワードを変更できる
・ユーザーの非アクティブ化(Ban)(オプション)
・ユーザーのプロフィール(オプション)
・CAPTCHAをサポート(CIオリジナルかreCAPTCHAが使用可能)
・HTMLかプレーンテキストのメール機能
■他にも使うなら
Ion Auth
SimpleSAMLphp
groceryCRUDとtank_authで簡単に管理画面と認証機能を作る
参照サイト
大変申し訳ありませんが、当社ではサービスの質を落とさないために、月の契約は5件までとさせていただいております。 契約をお待ちいただく可能性もございますので、ご了承のほどよろしくお願いいたします
コードイグナイターの勉強方法
■ 基本編 ■
■クエリ
Active Recordとは?
クエリヘルパー関数
■フォーム
■DBに情報を入れる
■メール
■DB接続
テーブル接続でデータを入れる
■会員登録を作ろう
管理画面を作ろう
ライブラリを利用して作ろう
オートロードとは
無名関数とは?
MVCとは何か?
この記事を読んだ人は、こんな記事も読んでいます
SEO対策の基本 外部要因とは?
SEO対策の基本的である、外部要因とは何か?
SEO対策をするなら絶対に知っておきたい、基本知識です。
売れるサイトを作るのに知って起きたい知識
サーチエンジンマーケティングという言葉をご存知でしょうか?
ホームページで商品やサービスを売る時に知っておきたいマーケティング
についてご紹介いたします。
SEO対策をする5つのメリットとは?
なぜ上位表示させることが大事なのか?なぜSEO対策をする必要があるのか
についてご紹介させていただきます。
SEO対策の内部要因とは?
上位表示させるためには、内部要因について知っておくことも大事です。
キーワードを上位表示させるために必要なのは、ソースコードを最適化することです
内部要因の対策について知りたい方はこちらへ
キーワード対策をする前に
そのキーワード対策。ちょっと待ってください。
そのまま対策をすると、必ずお金を損してしまいます。個人事業主や中小企業は
そんな大きなキーワードで対策をしてはいけません。
広告費用が高くなる本当の理由とは?
売れないサイトに集めていませんか?広告費用がかかるわりには
お問い合わせが少ない・・・と感じる方は多いはずです。
購入率の悪いサイトに集客をしている可能性があります。