Apache と PHP と MySQL
ワンダとダイヤと優しい奴ら(ASIN:B00009XLL3)風に。ていうか語呂が微妙に合いませんが。
そろそろ収拾がつかなくなり始めた小銭勘定を何とかすべく、資産管理データベースシステムを作ろうと思い立つ。Accessでやればできるのだが、オープンソースで金をかけずに作ってみることにする。長らくファイルサーバーだけに使っていたPCにようやく少し用途が増える。サーバーOSはWindowsなので、PostgreSQLではなくMySQLを選択する。それぞれのバージョンは
にした。MySQLは当初4.1.xを使っていたのだが、PHPからのアクセスが
Client does not support authentication protocol requested by server; consider upgrading MySQL client.
というメッセージがApacheのerror.logに出て、どうしてもできなかったのでダウングレードした。これについては、http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=16165&forum=26&3を参考にした。結局このトラブルシューティングに一番時間がかかってしまい、Apacheのダウングレードを試してみたりと余計な手間がかかった。PHPはApacheモジュールとして起動されるように設定する。これは問題なし。あと、Apacheの設定をいじって日本語の優先度を一番先頭にしてデフォルトの文字セットがShift_JISになるようにする。httpd.conf中にある
- LanguagePriorityキーをJaを先頭に
- DefaultCharsetキーをShift_JISに
変更した。これをしないと、HTMLの先頭ででいくら
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
と書いてもDefaultCharsetの設定が優先されてしまうらしい。DBにアクセスできるようになってからは特につまることもなく、PHPをさくさくと書く。途中からさすがにメモ帳は辛くなってきたので、phpエディタ(forWin)を導入する。このエディターで機能は十分。あとはSQLとHTMLのお勉強をしながらコードを書いていけば簡易版はできあがるだろう。
残作業
1段階
- 過去のトランザクションの参照、検索、修正、削除機能
- 指定した日付での資産状況の表示(バランスシート作成?)
- バックアップ、リストア手順の確立
2段階
- CSSを使ったユーザーインターフェースの洗練化
- 内訳を円グラフでグラフィック表示
- PHPスクリプトを別フォルダに移動
※参考サイト
The Apache HTTP Server Project(本家)
日本PHPユーザ会
日本MySQLユーザ会
HTMLクイックリファレンス