シンプルな掲示板を作る
ツリー型掲示板を作る
掲示板をアレンジする
デザインとロジックを分離する
|
掲示板を作る |
誤りの指摘やご意見はこちらへ ご意見板 BBS PHP Top |
項目 |
シンプルな掲示板を作る | ↑項目に戻る | |||||||||||||||||||||||||||||||||
それでは、掲示板を作りましょう。
まずはとってもシンプルな掲示板です。 以下の内容で、それぞれのファイルを作成してください。 bbs1.php write1.php show_contents1.php (今回より、プログラムが長くなってきますので、このような表示形式にさせていただきます) (また、文字コードは全てEUCで保存してください) 試してみる 今回はファイルをいくつかに分けています。 上手に分けると、ロジックとデザインの部分を分離することができます。 これにより、ロジックはプログラマが、デザインはデザイナが担当する、というように分業が可能になります。 (実際には完全に分離することは難しいですが。) データベース名は[bbs]、テーブルも[bbs]という名前で次のような項目で作成してください。
■解説-------- 各ファイルは
という内容になっています。 bbs1.phpの処理の流れは
となっています. 書き込みフォーム、投稿内容表示部分を別ファイルにして、include命令により組み込んでいます。
この部分は、3項演算子というものを使っています。 $resultの内容が真なら"書き込みました"を、偽なら"書き込みに失敗しました"を表示します。
functionは、「関数」の定義宣言です。 ここでは、Show_Titlesという関数を定義しています。 プログラム内から、Show_Titlesという名前で呼び出すと、この関数が実行されます。 Show_Titles関数は、DBより投稿タイトル等の情報を呼び出し、表示します。 |
||||||||||||||||||||||||||||||||||
ツリー型掲示板を作る | ↑項目に戻る | |||||||||||||||||||||||||||||||||
次は、ツリー型掲示板を作りましょう。 ツリー型掲示板は、親記事と子記事の関係をとり、木構造をとります。 以下の内容で、それぞれのファイルを作成してください。 bbs2.php write2.php show_contents2.php 試してみる ■解説-------- 一つ目のプログラムと変わったのは、記事の親-子関係を記録、表示するようになった事です。 show_contents2.phpは、記事を表示するとともに、その記事に対する子記事を投稿できるようになりました。 write2.phpは、書き込み時に親記事の番号をデータとして持ちます。 bbs2.php のShow_Titles関数は、Show_Itself_And_Call_Children関数を呼び出します。
Show_Itself_And_Call_Children関数は、記事番号とインデント幅を引数にとり、 記事番号の記事を表示した後、その番号を親記事にもつ記事を呼び出します。 このときに自分自身(Show_Itself_And_Call_Children関数)を 呼び出します。 これを「再帰呼び出し」と呼びます。 プログラムがシンプルに書けるので、とても気に入っています。(私が。) この再帰呼び出しにより、親子関係が再現され、記事ツリーが生成されます。 |
||||||||||||||||||||||||||||||||||
掲示板をアレンジする | ↑項目に戻る | |||||||||||||||||||||||||||||||||
さらにアレンジし、機能を付け足しましょう。 メール・・・投稿者のメールアドレスを記録 IP・・・投稿者のIPアドレスを記録 日時・・・投稿日時を記録 引用 ・・・記事に子記事を投稿する際に、親記事を引用する 以下の内容で、それぞれのファイルを作成してください。 bbs3.php write3.php show_contents3.php 試してみる |
||||||||||||||||||||||||||||||||||
デザインとロジックを分離する | ↑項目に戻る | |||||||||||||||||||||||||||||||||
掲示板の処理を行う部分と、デザインの部分(HTML)を切り離しましょう 以下の内容で、それぞれのファイルを作成してください。。 メール・・・投稿者のメールアドレスを記録 IP・・・投稿者のIPアドレスを記録 日時・・・投稿日時を記録 引用 ・・・記事に子記事を投稿する際に、親記事を引用する 以下の内容で、それぞれのファイルを作成してください。 bbs4.php write4.php show_contents4.php write4.ihtml show_contents4.ihtml 試してみる HTMLの部分は各.ihtmlファイルとして分離しました。 対応しているHTMLエディタ(某DreamWeaver等)を使い各.ihtmlファイルを編集することにより、 簡単にデザインができます。 これにより、デザインはHTMLデザイナが、ロジックはプログラマが行う、というように作業の分離がしやすくなります。 bbs4.phpをさらにbbs4.phpとbbs4.ihtmlに分けても良いでしょう。 大分掲示板らしくなってきましたね。 本サイトの掲示板も、上記のプログラムを少し変更したものを使っています。 さあ、あなたもサイトの掲示板をPHPのものに変更しましょう! そして友人たちをPHPに洗脳するのです!むんむん! |
↑項目に戻る
PHP Top |