2006/11/01(水)所持CD/DVD管理用Webアプリ

必要に迫られて作ろうと思っています。
とりあえずデータベースを設計してみる。

Table: Disc

カラム名データ型制約条件備考
DiscIDint unsignedprimary key / auto_increment
DiscNameverchar(255)not nullディスクタイトル
DiscNameYomiverchar(255)not nullディスクタイトルよみ
DiscCategoryIDsmallint(3) unsignedカテゴリID
DiscPaginationsmallint(2) unsignedディスク枚数
Depositoryverchar(64)保管場所
EntryDatedate登録日
UpdateDatedate更新日
Commenttextコメント

Table: DiscCategory

カラム名データ型制約条件備考
DiscCategoryIDsmallint(3) unsignedprimary key / auto_increment
DiscCategoryNameverchar(255)not nullディスクカテゴリ名

Table: Album

前に記事にした曲管理の為のデータベースと連携する場合のテーブル。他にもArtistテーブルとかも必要だけど、大本となるAlbumテーブルのみ再設計。

カラム名データ型制約条件備考
DiscIDint unsignedprimary key
DiscNosmallint(2) unsignedアルバム中の何枚目か
AlbumTypeIDsmallint(3) unsignedアルバムタイプID
ArtistIDint unsignedアーティストID
ReleaseDatedateリリース日
SPECverchar(16)規格品番
TotalTracksmallint(2)アルバムのトラック総数
TotalTimetimeアルバムの全時間
Commenttextコメント
asinverchar(10)Amazonとの連携*1

*1 : 将来的に画像表示などができればいいなぁ

2006/10/29(日)[メモ] URLで使用可能な文字数

RFC 2616 HTTP/1.1にはURLの長さに関する規定はないが、IEではURLに使用可能な文字数は2,083文字とされている。
日本語をURLに変換すると日本語1文字あたり6文字分使用されてしまう為、実際は日本語300文字程度しかGETメソッドで渡せないことになる。

ちなみにFirefoxなどの他のブラウザがどのように規定されているか不明。

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']