このサイトはPHPを独習する際に作成したスクリプトを基に、プログラム言語初心者のための入門講座として作成しました。PHPは初心者に親しみやすく、解りやすいプログラム言語です。これからプログラムを学ぶ人の参考になればと思います。
ブログもどき
日記帳で使ったファイル操作とカレンダーや url でデータを送信するスクリプトを組み合わせれば、ブログ風日記サイトのできあがりです。コメントの書きこみもできるようにしました。 ブログもいくつか試してみたのですが、なかなか全ての点でOK!ってブログは見つからないものですよね。このブログもどきはまだ未完成レベルですが、いずれ進化させて、オリジナルブログを作る計画です。
「もどき」なので、トラックバックもRSSもありません。目標は以下の項目です。
1、パスワードを設けた入力画面で、日々の入力ができること 2、写真ありでもなしでも記述可能であること 3、未来も過去も記述ができるが、未来の記述はその日になるまで表示させないこと 4、日々の記述に対し、コメントが複数書きこめること 5、カレンダーを表示させ、日付クリックでその日の記述を表示、コメントの書込みができること 6、各月の記述を全てまとめて表示できること 7、最近の記述のタイトルを表示させ、リンクをつけること 8、指定したコメントだけを削除できること 9、外枠の色をリロードのたびに自動変更できること 10、トップの写真は月ごとに自動変更できること 11、データの記録フォルダ・ファイルは全て自動作成できること
次の問題点はは今回見送りとしました。 1、過去や未来のカレンダーが表示できない 2、記述が月単位であるため、月が変わると先月分が連続して表示されない 3、月が変わっても記述をしないと前の月の記述も見ることができない 4、前月の記述にはコメントが書き込めない 5、記述の修正画面がない (削除後の書きこみはできる)
特に新しい関数や手法はありません。これまでに出てきたもを組み合わせただけです。 カレンダーの日付は、クリックすると url に $day の情報をくっ付けて送信する設定になっています。何度も出てくるので、ユーザー定義関数にしています。
function AHREF($day){ global $updir; if(file_exists("./$updir/dairy".$day) and $day <= date(d)){ echo "<a href='index.php?rdate=".$day."'>$day</a>"; } else { echo "$day"; } }
これは遊びですが、リロードのたびに背景色を変える部分です。3-7で明るすぎたり暗すぎたりしないように・・・
<php srand((float)microtime() * 1000000); $rand1 = rand(3,7); $rand2 = rand(3,7); $rand3 = rand(3,7); echo "background-color:#".$rand1.$rand1.$rand2.$rand2.$rand3.$rand3 ; ?>
設置方法
構成:青はフォルダ、赤はPHPファイルです。必要なのはのはphpとcssの4ファイルと画像用のimgフォルダです。記録用のフォルダ・ファイルは自動作成です。 新規設置の場合は記録用フォルダは作成されますが、すでに作成されたフォルダをFTPなどでサーバーにUPした場合は、属性(パーミッション)の設定を行う必要があります。自動設定では777に設定されます。
folder | ┬ | index.php(表示画面) |
| ├ | calender.php(カレンダー用別ファイル) |
| ├ | write.php(記述画面) |
| ├ | style.css(スタイルシート) |
| ├ | img ─ (ヘッダー用写真12枚) |
| └diary | ┬ 2005 | ┬ monnth1(1月フォルダ) ─ 31日分のファイル |
| | │ | ├ monnth2(2月フォルダ) ─ 28日分のファイル |
| | │ | │ : |
| | │ | └ month12 (12月フォルダ) ─ 31日分のファイル |
| | ├ 2006 | ┬ monnth1(1月フォルダ) ─ 31日分のファイル |
| | │ | ├ monnth2(2月フォルダ) ─ 28日分のファイル |
| | │ | │ : |
| | │ | └ month12 (12月フォルダ) ─ 31日分のファイル |
スクリプト1が表示画面(index.php)スクリプト2はカレンダーファイル(calender.php)、スクリプト3は記入画面(write.php)の2ファイルです。参考までにスタイルシートも掲載します。これで365日分の記述をを自由に表示させることができます。 ※これらのファイルをそのまま使うことで「ブログもどき」の実行が可能ですが、使用に当っては個人の責任で行ってください。
⇒こんな感じ |