職場実習7日目
今日はSS投稿サイトのDBを構築し、perlを使って操作できるようにする。
データベース仕様
DB構造は前回書いたような一つの表にまとめる事はせず、用途別に分けた。全部をオブジェクトとして一つにまとめてしまうと外部キーを使えなくなり、DB構造をSQL上で書けなくなり、プログラム上で判別せざるを得なくなるからだ。
よって、以下のように表を分ける事にした。
- 会員情報
- 番号(シリアル値)
- メンバーID・キー
- 名前(漢字・ふりがな)
- 性別
- 生年月日
- 登録日
- 住所
- メールアドレス
- ホームページURL
- 電話番号・携帯番号
- 自己紹介文
- サークル情報
- 番号(シリアル値)
- 名前(表記・ふりがな)
- 作成管理者ID・キー
- サークルページURL
- グループ番号(ジャンル・作品)
- サークルメンバー情報
- 番号(シリアル値)
- サークル番号
- メンバー番号
- メンバー権限
- グループ情報
- 番号(シリアル値)
- 名前(表記・ふりがな)
- 作成者ID・キー
- 種別:ジャンル・作者・作品(シリーズ)・巻(作品)・部・章
- 親グループ番号
- サークル番号
- SS情報
- 番号(シリアル値)
- 名前(表記・ふりがな)
- 作成者ID・キー
- SS内容ファイルURL
- 書式番号
- 挿絵番号
- グループ番号
- サークル番号
- SS書式情報
- 番号(シリアル値)
- 名前(表記・ふりがな)
- 作成者ID・キー
- 書式ファイルURL
- グループ番号
- サークル番号
- SS挿絵情報
- 番号(シリアル値)
- 名前(表記・ふりがな)
- 作成者ID・キー
- 画像ファイルURL
- グループ番号
- サークル番号
- 用語番号
- SS用語情報
- 番号(シリアル値)
- 名前(表記・ふりがな)
- 作成者ID・キー
- 説明ファイルURL
- 区分:人物名・固有名詞・用語
- グループ番号
- サークル番号
セッション管理
perlでセッション管理できないものかと色々調べてみたら、ライブラリを使う方法があるらしい。
CGI::Session.pmでセッション管理
CGI::Session - CGIアプリケーションにおける持続的なデータのセッション
perlライブラリをパッケージ形式で簡単にインストールできるツールが見付かったので、これを使う。
CPAN 初級
DBへのアクセス処理のデバッグ
コマンドライン上ではエラーメッセージが表示されるので、特定しやすいが、
Webブラウザ上でエラーが起こると画面に何も表示されないため、エラー箇所の特定が難しい。
そこで、同じような所でつまづいている人がいないか調べてみたら、やっぱりいた。
デバッグの基本 'PERL-LABO'
これに早く気付くべきだった。早速使ってみよう。