CodeIgniterでセッション管理にSQlite3を使ってみる

CodeIgniter(PHP開発)

久しぶりにちょっと開発。

データがとても小さいのでSQLiteを使おうと思った。
開発はMac上。

PHPにSQLiteのドライバーはバンドルされているようです。
DBのメンテナンスツールにはなんといってもDB Browser for SQLiteがオススメですね。

さて、CodeIgniterでログオンログオフなどの管理をしようとすると、sessionを使うのが必須といえるでしょう。
CodeIgniterのセッション管理は独自のものだったと記憶しています。

SQLiteをセッション管理ファイルとして使うなら、こうします。

  1. DB Browserで次のようにテーブルを定義します。(ここではデータベースファイルをdb.sqlite3としています)

  2. application->config->database.php内で、
    databaseにSQliteで作ったデータベースファイル(./db.sqlite3)を定義します。
    dbdriverにsqlite3を指定します。
  3. application->config->config.phpのセッション管理をこうします。
  4. application->config->autoload.php内にこうします。
  5. このまま実行すると、おそらくDatabaseがRead Onlyのエラーになると思います。(Macの場合)、phpスクリプトとデータベースファイルが格納されていたディレクトリの書き込み権限を777にとりあえずします。だって自分しか使わないでしょ?

Welcomeクラスでいいので、起動してみてなんのエラーも出ないことを確認します。エラーが出ないということはsessionクラスは動いています。

コメント