2006/11/01(水)所持CD/DVD管理用Webアプリ
必要に迫られて作ろうと思っています。
とりあえずデータベースを設計してみる。
Table: Disc
カラム名 | データ型 | 制約条件 | 備考 |
---|---|---|---|
DiscID | int unsigned | primary key / auto_increment | |
DiscName | verchar(255) | not null | ディスクタイトル |
DiscNameYomi | verchar(255) | not null | ディスクタイトルよみ |
DiscCategoryID | smallint(3) unsigned | カテゴリID | |
DiscPagination | smallint(2) unsigned | ディスク枚数 | |
Depository | verchar(64) | 保管場所 | |
EntryDate | date | 登録日 | |
UpdateDate | date | 更新日 | |
Comment | text | コメント |
Table: DiscCategory
カラム名 | データ型 | 制約条件 | 備考 |
---|---|---|---|
DiscCategoryID | smallint(3) unsigned | primary key / auto_increment | |
DiscCategoryName | verchar(255) | not null | ディスクカテゴリ名 |
Table: Album
前に記事にした曲管理の為のデータベースと連携する場合のテーブル。他にもArtistテーブルとかも必要だけど、大本となるAlbumテーブルのみ再設計。
カラム名 | データ型 | 制約条件 | 備考 |
---|---|---|---|
DiscID | int unsigned | primary key | |
DiscNo | smallint(2) unsigned | アルバム中の何枚目か | |
AlbumTypeID | smallint(3) unsigned | アルバムタイプID | |
ArtistID | int unsigned | アーティストID | |
ReleaseDate | date | リリース日 | |
SPEC | verchar(16) | 規格品番 | |
TotalTrack | smallint(2) | アルバムのトラック総数 | |
TotalTime | timeアルバムの全時間 | ||
Comment | text | コメント | |
asin | verchar(10) | Amazonとの連携*1 |
2006/10/29(日)[メモ] URLで使用可能な文字数
RFC 2616 HTTP/1.1にはURLの長さに関する規定はないが、IEではURLに使用可能な文字数は2,083文字とされている。
日本語をURLに変換すると日本語1文字あたり6文字分使用されてしまう為、実際は日本語300文字程度しかGETメソッドで渡せないことになる。
ちなみにFirefoxなどの他のブラウザがどのように規定されているか不明。
2006/10/29(日)while文が好き
while文だと
$i = 1; while ( $i < 10 ) { echo $i."回目<br>\n"; $i++; }
for文だと
for ( $i=1; $i < 10; $i++ ) { echo $i."回目<br>\n"; }
やっている処理は同じでもwhile文の方が$iや$i++を個別に記入できる為、直感的でなんだか好きです。
2006/10/29(日)変数名の付け方
今作っているPHPプログラムから抜粋
$sql_get_category_list = "select CategoryName from category order by CategoryName asc;"; $category_list_result = mysql_query($sql_get_category_list); if (!$category_list_result) { echo "カテゴリ一覧が取得できません"; exit; } else { $i = 0; while( $i < mysql_num_rows($category_list_result) ) { $category_list[$i] = mysql_result($category_list_result, $i); $category_split_list[$i] = mb_split("::",$category_list[$i]); } $i++; }
PHPでは$○○で変数を表しますが、後でソースを読んだときに意味が解りやすい変数名を付けるとやたらと長くなってしまいます。
どのように変数名を付ければエレガントなプログラムになるのでしょうか?
2006/10/24(火)PHPなプログラミングメモ
PHPでサイトを作っているけど参考にしている本が古すぎるため(PHP4の初期)、要らない苦労をし続けている気が…。
はまったとこのメモ
実行中のスクリプトのパス
$PHP_SELF -> $_SERVER['PHP_SELF']
MySQLサーバに接続
mysql_connect($db_host, $db_user, $db_passwd);
DB選択
mysql_select_db($db_name);
POSTメソッドでのデータの受け渡し
$hogehoge -> $_POST['hogehoge']