イメージ

2024/03/14 コンテンツ・メーカー2のバージョン3.0を制作中です。

スレッド式BBSの機能紹介やサンプルデモ


スレッド式のBBSの販売を開始しました。
名称は「スレッド式BBS」としました。
サンプルデモもありますので、ぜひ使い勝手をお試しください。

これは当サイトでサポートBBSとして使用しているものとだいたい同じになります。
とは言っても一般販売する以上は、色々な用途に使用できるようにカスタマイズをしてあります。

現在の最新バージョンは2022年9月25日公開のバージョン3.0です。
参考ページ:プログラムをアップデートするの際の思想について

各バージョンごとのアップデート内容については、このページ最下部の「アップデート履歴」に記載してあります。


当サイトではすでに「レスポンシブBBS」というBBSを公開しておりそれもスレッド式と呼べるのですが、最大の違いは以下のようになります。
このスレッド式BBSは以下のような仕様になります。

  1. トップページには各スレッドのタイトル・最終投稿日時・最終投稿者の名前だけが表示される。(投稿本文は表示されません)
  2. 上記の各スレッドのタイトルをクリックすると別ページ(個別スレッドページ)に移動し、そのページ内で投稿本文や返信投稿が表示される。

つまり「レスポンシブBBS」では親投稿と子投稿(返信投稿)がトップページからすべて時系列で並列に表示されていくのに対し、この「スレッド式BBS」では親投稿ごとに1つのURL(個別スレッドページ)が割り当てられる。ということになります。

また、各機能ごとに別売り形態の「レスポンシブBBS」とは違い、このBBSはすべての機能が最初から組み込まれております。

この「スレッド式BBS」の主な特長は以下のようになります。
以下の一覧が多くて見にくいですが、レスポンシブBBSにある機能はすべて実装されているという前提で流し読みしていただければOKです。

  1. レスポンシブでスマホやタブレットに対応。
  2. 設置が超簡単。設定ファイルなし。サーバにアップロードするだけで使えます。
  3. ログの保存はSQLite方式とMySQL方式を選択できます。
  4. 入力欄を増やすことはできませんが、減らすことは可能です。
    その場合は、HTMLファイル内でその入力欄の親要素のdt,dd要素ごと削除してください。
  5. 入力必須項目はHTMLファイル内でdd要素にclass=”required”を追加するだけでOK。
  6. 完了したスレッドには「完了」のラベルを表示できる機能。(「完了」の文字は設定ファイルで変更ができます)
  7. 美しいHTMLとCSS。W3C準拠。HTML5・CSS3文法エラーなし。
  8. デザインはすべてCSSで設定。自由に変更可能。
  9. ページの移動なしで必須項目の入力チェック。
  10. 入力エラーがあった場合にはその項目まで自動でスクロールして戻る機能。
  11. 管理者はログインすることで、ブラウザ上で投稿を削除可能。
  12. 書き込みを行った後に、ブラウザの「戻る」や「進む」ボタンやページ再読み込みなどによってページを行き来してもトラブルが起きない仕様。
  13. 直近何日以内の書き込みに対して「NEW」のラベルを表示するかを設定可能。
  14. JavaScriptが動作していない環境からは書き込みできない機能。(スパム対策)
  15. あらかじめ設定したドメインからの投稿しか受け付けない機能。(スパム対策)
  16. CSRF(クロスサイト・リクエストフォージェリ)対策としてトークン機能付き。(スパム対策)
  17. 管理者は返信投稿のみを削除したり、親投稿ごとまとめて削除することが可能。
    (返信投稿を残して親投稿だけを削除することはできません)
  18. ブラウザ上で過去ログを自由に編集することができる。
  19. 画像投稿機能。(詳細は後述)
  20. 過去ログを検索できる機能。(親投稿のタイトル・名前・本文が検索対象になります)
  21. トップページに表示される親投稿の一覧をページネーションする機能。
  22. URLを含んだ投稿、禁止IP、禁止ワードをあらかじめ設定しておいて拒否できる機能。
  23. 書き込みあった際、BBS管理者にメールで通知が届く機能。(ログイン中の管理者自身の書き込みにはメール通知は来ません)


このプログラムには画像を投稿できる機能が最初から付いております。
画像投稿機能の詳細は以下のようになります。

  1. ファイル選択時にプレビュー表示する機能。
  2. クリックしたら拡大表示する機能。
    (PCの場合のみ。スマホの場合は別ウインドウ表示となります)
  3. アップロードできる画像ファイル形式はjpg、png、gifになります。(許可する形式はあらかじめ選択できます)
  4. 1つの投稿につき、アップロードできる画像は1枚です。
  5. WebP、AVIFに自動変換・表示させる機能。(バージョン3.0以降)
  6. 選択されたファイルが許可された形式かどうかを、ページ移動前(送信前)にチェックする機能。
  7. HTMLやJavaScriptでの設定は悪意ある攻撃者によって改ざんすることが容易なので、上記設定とは別にPHP側でも選択可能な拡張子を設定し、サーバ側にて偽装ファイルかどうかをチェックする機能。
  8. 選択されたファイルがアップロード最大容量を超えていないかどうかを、ページ移動前(送信前)にチェックする機能。
  9. HTMLやJavaScriptでの設定は悪意ある攻撃者によって改ざんすることが容易なので、上記設定とは別にPHP側でもアップロード最大容量の設定をし、サーバ側にてその容量チェックをする機能。

スレッド式BBSのサンプル
ご自由に書き込んだりして使い勝手をお試しください。

管理画面のサンプル
BBS管理画面にログインをすると、削除機能や過去ログ編集機能を使用することができます。
ユーザ名はtani、パスワードは0000です。
ログアウトはブラウザを閉じるか、またはログアウトボタンを押すことで可能です。

PHP7.0以降を推奨。
このサイト上にあるサンプルデモはPHP8世代で稼働しています。

初期状態ではSQLite方式でのログ保存になっているので、サーバ側でデータベースを用意する必要はありません。

もしMySQLやMariaDBのようなサーバ側で用意するタイプのデータベースを使用したい場合は、同梱のconfig.phpの中でデータベース情報を記入すればOKです。(後述する「MySQLを使用する場合」を参考にしてください)

推奨ブラウザはChromeSafariFirefoxEdgeです。
これは各ブラウザのシェア率で決めています。

IE(Internet Explorer)でもだいたい動作すると思いますが、IEは2020年6月時点ではすでに終了しているブラウザなので、もし正常動作しなかったとしてもサポート外になります。
ですので、もしIEで何らかの不具合があり、それを正常動作させるためのカスタマイズは有償対応となります。

理由や詳細については「プログラムのIE(Internet Explorer)への対応について」をご覧ください。

説明
設置する人が最低限設定する必要があるファイルはありません。
ただ、BBS管理者がログインするためのユーザー名とパスワードは変えておいた方が良いですので、BBSの動作確認後にそれだけは変更してお使いください。

0、PHPが動くサーバーが必須です。
PHPが動くサーバであるか確認しましょう。
サーバ側の設定でWAF設定がオンになっていたりすると、動作できませんのでご注意ください。

1、zipファイルを展開します。

2、すべてサーバ上にアップロードします。

設置作業は以上です。
ブラウザでindex.phpにアクセスして書き込みテストをしてみましょう。

同梱のconfig.phpの中では画像アップロード機能やスパムブロック機能に関する設定部分がありますが、すべて任意です。
ですので、設定を読むのが面倒な場合はすべてデフォルトのまま使用しても問題ありません。

ただ唯一、以下でも解説する「BBS管理者ログインのためのユーザー名とパスワード」は必ず変更しておきましょう

【注意点】
ファイル保存の際は必ず文字コード設定を「UTF-8 BOMなし(UTF-8N)」で保存してください。
そのやり方については「文字コードをUTF-8 BOMなし(UTF-8N)でファイル保存をする方法」を参考にしてみてください。

管理者はログインすることで削除機能や編集機能などを使うことができます。
login.phpにブラウザでアクセスし、ログインをしてみましょう。
ログアウト方法は、ログイン後に表示されるログアウトボタンを押すか、またはブラウザを閉じることで可能です。

また、ユーザー名とパスワードはconfig.php必ず変更しておきましょう。
変更しておかないと他人に不正ログインされて過去ログを消されたりしちゃうヨ!

config.phpの中ではどのような項目が設定できるかをご購入前の方が確認できるよう、以下からダウンロードできるようにしておきます。
ご購入を検討している方は参考にしてください。
https://www.1-firststep.com/samplephp/thread-bbs-html-sample/config.zip

HTML
BBSの動作に影響しない各部分はHTMLファイルとして分離させてあり、htmlフォルダの中に同梱されています。
それぞれのHTMLファイルごとに以下のようなコメント文を書いてありますので、(以下は bbs-form-index.html の例)

<!-- bbs-form-index.htmlここから -->
<!-- bbs-form-index.htmlここまで -->

BBSのHTMLソースを表示させることで、そのHTMLファイルが適用されている位置を確認できるようになっています。(上記のサンプルデモでも確認可能)

ページ内に何かを追加したい場合はこれらのHTMLファイルを編集すれば、アクセス解析を追加したり既存のサイトにデザインを似せたりなど、ある程度のカスタマイズをすることができます。

【以下、トップページ用のHTMLファイル一覧】

  • html-header-index.html (トップページのhead要素部)
  • header-index.html (トップページのbody要素の開始部)
  • information-index.html (トップページの解説などを書くエリアのHTML)
  • bbs-form-index.html (トップページのフォーム部分)
  • footer-index.html (トップページのフッター部)

【以下、個別スレッドページ用のHTMLファイル一覧】

  • html-header-single.html (個別スレッドページのhead要素部)
  • header-single.html (個別スレッドページのbody要素の開始部)
  • information-single.html (個別スレッドページの解説などを書くエリアのHTML)
  • bbs-form-single.html (個別スレッドページのフォーム部分)
  • edit-form.html (編集機能の際のフォーム部分・個別スレッドページにのみ存在)
  • footer-single.html (個別スレッドページのフッター部)

【以下、ログインページ用のHTMLファイル一覧】

  • html-header-login.html (ログインページのhead要素部)
  • header-login.html (ログインページのbody要素の開始部)
  • footer-login.html (ログインページのフッター部)

これらのHTMLファイルを実際にご覧になりたい方はこちらからダウンロードできます。
https://www.1-firststep.com/samplephp/thread-bbs-html-sample/html.zip

ただ、フォーム要素の部分(bbs-form-index.htmlなど)のid名やname名を変更するとBBSの動作に影響する可能性がありますので、フォーム部分のカスタマイズだけは以下のページを参考にして慎重に実施してください。
スレッド式BBSのデザインのカスタマイズ方法について解説

配色
デザインはすべてCSSで設定されています。
同梱されているCSSファイルは以下になります。

  • reset.css (ブラウザのデフォルトスタイルをリセットするためのCSS)
  • style.css (トップページと個別スレッドページ共通設定のためのCSS)
  • index.css (トップページ専用の設定のためのCSS)
  • single.css (個別スレッドページ専用の設定のためのCSS)
  • login.css (ログインページ専用の設定のためのCSS)

具体的なデザインカスタマイズの方法は以下のページで解説していますので、購入前の方は参考にしてください。
スレッド式BBSのデザインのカスタマイズ方法について解説

このBBSは初期状態ではSQLite方式でログを保存するようになっています。

もしMySQLを使用したい場合は、同梱のconfig.phpの中の以下の部分にデータベース情報を記入してください。
記入した場合は自動的にMySQL方式でのログ保存になります。

/* --以下、MySQLなどのデータベースを使う場合の設定-- */

//【任意】 データベースのホスト名 (記入した場合はSQLite方式ではなくなります)
$tb_db_host = '';

//【任意】 データベース名
$tb_db_name = '';

//【任意】 データベースのユーザー名
$tb_db_user = '';

//【任意】 データベースのパスワード
$tb_db_pass = '';

電卓
販売価格は30,000円(税抜)となります。
設置メールサポートが付いていますので、設置の際につまづくようなことがありましたらご質問ください。

【注意点】
設置してプログラムを正常動作させるまでのサポートです。
デザインを変更するカスタマイズなど、それ以外のご質問は有償扱いとなりますのでご了承ください。

ご購入は以下からどうぞ。
ペイパルと銀行振込でのお支払いの場合は、料金のお支払いをしていただき、その入金確認後にメールで添付にてお送りする形となります。
クレジット決済の場合はお支払後にすぐダウンロードができますので、お急ぎの方にはおすすめです。

【スレッド式BBSのご購入】
ペイパルでお支払い
お問い合わせページからお申込み(銀行振込)
BASEでご購入(クレジットカード) (決済後ダウンロード可能)
このサイトでご購入(クレジットカード決済) (決済後ダウンロード可能)

【クレジット決済の注意点】
上記のペイパルと銀行振込以外の場合は、お支払後にアドオンファイルをすぐにダウンロードできます。

このサイトでのクレジット購入の場合は、ダウンロードはそのセッション中(ブラウザを閉じるまで・または24分以内)にのみ可能となります。
再ダウンロードしたい場合は、お問い合わせページからご連絡くだされば、本人確認後にメール添付にてお送りいたします。

注意
カスタマイズしていない初期状態でも発生するようなバグ(不具合)があった場合には、追加料金なしでバグ修正を行いますのでご連絡ください。
(お客様の手によってJavaScriptファイルやPHPファイルを独自カスタマイズされている場合は、別途料金が発生します)

サポート者
この商品には「設置メールサポート」が付いていますので、サーバ上に設置してプログラムが正常動作するまでにわからない点がありましたら、お問い合わせページからご連絡ください。

既存サイトにデザインを合わせたり、プログラムファイル(JavaScriptやPHPファイル)を編集する必要のあるカスタマイズは有償対応となります。
そのようなご質問の場合は、有償メールサポートカスタマイズ依頼をご検討ください。

また、設置代行サービスは10,000円(税抜)となります。
設置代行サービスでは設置するサイトのデザインにある程度合わせたり、ご希望の設定や動作確認はすべてこちらで実施した状態での納品となります。

2017/05/15 バージョン1.0
  • 当サイトのサポートBBS専用として制作。(未発売)
2018/10/05 バージョン2.0
  • 様々な用途に汎用的に使えるようにカスタマイズし、発売。
2018/10/19 バージョン2.1
  • 管理者ログイン中はテキストエリアにHTMLタグを入力可能に変更。
  • その他、わずかな修正。
2018/10/31 バージョン2.1.1
  • URL欄に書き込まれた内容が、通知メールの本文に記載されない不具合を修正。
2019/01/08 バージョン2.2
  • タブレットで拡大されて表示されるのを防ぐため、レスポンシブのブレイクポイントを640pxから1000pxに変更。
  • 長いURLが投稿されたときに、表示エリアをはみ出さないように折り返させるため、single.cssにword-wrap: break-word;を追加。
2020/07/01 バージョン2.3
  • PHP7.4に対応。(PHP7.4では一部の構文に関しての判定が厳しくなったため)
  • 個別スレッドページのtitle属性にそのスレッドのタイトルが追加されるようになりました。
  • スレッド一覧ページ(トップページ)の2ページ目以降のtitle属性に「2ページ」というようなページ数表記が追加されました。
  • jquery.cookie.jsの使用を廃止。
2022/06/17 バージョン2.3.1
  • PHP8.1に対応。
2022/09/25 バージョン3.0
  • デザインの調整。
  • ページ表示速度の高速化。
  • WebP、AVIF形式の画像に対応。
  • 他、多くの細かな点の修正。
提供サポートなど