PHPでCDのレビューページを作ろうかと思っているのですが、どのようにするのが一番便利なのかと悩んでいます。

CDデータ及びレビューデータの作成のしやすさ、検索や他CDへの関連などを実現できるスマートな方法がありましたらご教授下さい。

CDのデータとレビューのデータを分けるかどうかと言うのも悩みどころです。

使用経験があるのはMySQL、XML、XMLDOM、XSLT等です。PHPで実現可能であれば他のDBや機能を用いるのでもかまいません。

データ構造をメインに解説して頂けると嬉しいです。URLは特になくて構いません。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:upride No.1

回答回数220ベストアンサー獲得回数1

ポイント150pt

Urlダミーです

MySQLを前提に基本設計だけを提案します

[マスタテーブル]

■メディアマスタ(CDかDVDかとか)

■ジャンルマスタ

■レーベルマスタ(会社とレーベル名)

■アーティストマスタ(名前・画像パスとか)

[トランザクションテーブル]

■CDデータトランザクション

 画像パス・CDの内容・発売日・発売予定日などを格納

 キーはメディアID,ジャンルID,レーベルID,アーティストID,CDIDでユニーク

■CDレビュートランザクション

 CD画像パス,アーティスト画像パス,レビュー記事

 キーはCDデータトランザクションと同じにすればCDデータごとにレビュー書ける

[入力画面]

各マスタ画面

CDデータメンテナンス画面

CDレビューメンテナンス画面

[表示用画面]

CDデータ検索表示画面

CDレビュー検索表示画面・・・とか

[検索表示仕様]

メディア

レーベル

アーティスト

CDタイトル

発売日

発売予定日

レビュー登録日

などで検索・並び替え

ジャンル別やアーティスト別

今月発売のCDなど多彩な表示が可能

[発展]

曲名トランザクションテーブル(曲名・作詞・作曲・編集など)

歌詞トランザクションテーブル(歌詞Htmlへのパス格納)

などを新たに設けると

歌詞の参照もできる

こうゆうの考えるの楽しいですよね

(作るの大変ですが)

id:tanpa

この短時間にすてきな回答ありがとうございます。

テクニカルエンジニアDBに軽く不合格の私なので、こういうのを見ると感嘆のため息が出ます(^^;

歌詞トランザクションテーブルを曲名トランザクションテーブルから参照すればいいですね。

CDの内容の構成を作るとしたら

CD内容構成テーブルを作ればいいのかなぁ・・・

同じ曲が複数のCDに入っていたりもしますよね。

  CDデータID, 曲名トランザクションID

(曲数分登録する)

CDデータに

  曲1のID, 曲2のID ・・・

は流石にまずいですもんね(;´Д`)

2004/08/25 11:19:59
id:upride No.2

回答回数220ベストアンサー獲得回数1

ポイント50pt

またまた投稿します

全く同じ名前の曲が同じCDに入っている場合は

データ上は別の曲IDを振るといいと思います

(元のCDがそうだからって考えです)

でも大抵は同名ではなく曲名の後ろにインストゥルメンタルとかカラオケとかなんかつくのではないでしょうか?

もしあったとしても曲名検索では前方一致検索にして曲名でGroup byもしくはDistinctでダブり無く表示できます

使い勝手がいい設計は各テーブルのキーの持たせ方と

リレーションの張り方が複雑になるので

一度システムを作る前にテーブルだけ構築して

サンプルデータ打ち込んでプロトタイプを検討したほうがいいですよ

id:tanpa

uprideさん、再びの回答ありがとうございます。

同じIDを振るか違うIDを振るかはちょこっと作ってみて考えようと思います。

同じ曲というのはシングル曲がアルバムに入った場合などですね。編曲されてる場合は除きます。

そうすると、曲名から入っているCDを検索したり出来そうですので。

実際にそこまで大きなものを作るかは分かりませんが、何か楽しみになってきました。

ありがとうございました!

#実は一番大変なのはインターフェイスだったり?( ̄ー ̄)

2004/08/25 12:15:27

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません