LoginSignup
39
42

More than 5 years have passed since last update.

今更ながら掲示板を作ってみた(ver.2)画像添付機能付

Last updated at Posted at 2016-09-06

なんだかんだで、丸一日かかってしまった…

とりあえず今回は Github にでも上げておこうと思ったので、 初心者でも利用できる こと、SQLite3 が動作すれば、動くように作った。PHPが動作する環境なら、SQLite は当然入っているよねってことで。

フリーで配布している掲示板には古いものも多く、Undefined index とか大発生するような古いものがたくさんある ので、その辺の考慮と、最低限のセキュリティは担保されていると思います。

あとは、再利用しやすいように、Bootstrap3 に対応しております。

ソースコード丸見えなので、ある程度の上級者のコードレビューにも耐えられるように書いてみました。手抜きなし(嘘)

機能

  • スレッド式
  • 画像投稿機能(ON/OFF設定可能)
  • 削除機能
  • スレッド本文、コメント内検索機能
  • レスポンシブ・デザイン

動作環境

  • PHP5.4以上
  • SQLite3
  • GDモジュール(画像投稿利用時)

ダウンロード

ソースコードはこちらから Github

ライセンス

MIT とします。
個人利用、商用利用を問わず利用可能です。

余談

今回BBSを作ってみて思ったのだが、 初心者が、データベースやセキュリティの基本を勉強するにはとてもいい題材 だと思う。 実務で作成することになるようなWEBアプリケーションにしても、基本的な機能としては掲示板となんら変わりない。
全くの未経験の新入社員が1年程度の見習い期間を経たころには、自力で作成できる程度にはなっていてほしい。

ちょっと洗い出してみると、以下のようになる。

  • 条件分岐
  • データベースの使い方
  • XSS 対策
  • CSRF 対策
  • SQLインジェクション 対策
  • ユーザー関数
  • 再帰関数(スレッド式の場合)
  • クラス、メソッド(使わなくても作成はできるが…)

自分なりの持っている知識を総動員して作ってみるのは、いいと思う。できるならそれを 上級者にレビューしてもらうといい だろう。

逆にこういった目的のための題材としては、向かないなと思ったのが、 MVCなどの概念を無理やり当てはめようとすると、無理 が生じる。

あくまで 基本文法を学んだ人が知識と技術の確認のために作るもの だということだ。
ただし、10年前なら掲示板を作っても楽しいだろうけど、今どき、サイトにBBSを準備する意味って…ほとんど…

追記)
無駄に 画像投稿機能 をつけてみた。
ついでに 削除機能 もつけた

スクリーンショット

スクリーンショット 2016-09-07 5.16.11.png

localhost_2016-09-16_13-36-34.png

39
42
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
39
42