PHPで作るデータベースのいらない掲示板
作成日2021年07月28日
ひと目で分かるシンプル掲示板をネットで探し廻ったのですが、「これは簡単便利」って代物は、なかなかぶち当たらないので自力で作ってみました。「一言メッセージ」を書き込めるようになっています。
セキュリティのためハイパーリンク機能はありません。
それらしく出来上がったPHP掲示板
もう少し凝ったものにしようと頑張ったのですが、PHP8になってからエラーや警告が頻発するようになり、このレベルで止めました。
今まで「いい加減なPHPを組んでた」とPHP8になってから痛感しております。
当然、フリーなのでお好きなように活用してください。
サンプルはページ下部にあります、テストとしてお試し可能です。
1.PHPコードを貼り付ける
下記PHPコードをHTMLコードの上部に貼り付けます。
example.php(html)
<?php
function h($s) {
return htmlspecialchars($s, ENT_QUOTES, "UTF-8");
}
$date = date('Y年m月d日 H時i分');
if($_POST){
$name = $_POST['name'];
$content = $_POST['comment'];
$handle = fopen("bbs.txt","a");
fwrite($handle,"<hr><b>" .h($name). "</b>:" .$date. "<br>" .nl2br(h($content),false). "<br>");
fclose($handle);
header('Location: ./');
}
?>
PHPが動作する環境が必要になります。「example.html」などのHTMLファイルでPHPを動作させるには、こちらの記事で解説しています...HTML上でPHPを動かす
パーミッションの変更は不要です。
WAFは「OFF」設定になります。
文字コード「UTF-8」になります。
構成ファイルは2つだけです!
- example.php(html)
- bbs.txt
「bbs.txt」は自動で同ディレクトリに生成され、投稿データを格納します。
2.フォームの貼り付け
「footer」の直前に貼り付けます。WEBサイトの構成により違います、環境に合わせたセッティングが必要です。
<form action="" method="POST">
<textarea rows="6" name="comment" maxlength="300" placeholder="コメント欄(最大300文字、ハイパーリンク機能なし)投稿ボタンを押すと確認画面なしで反映されます。" required></textarea><br>
<input type="text" name="name" maxlength="6" placeholder="名前(最大6文字)" required> <button type="submit" name="action" value="post">投 稿</button>
</form>
<?php include "bbs.txt"; ?>
分からない場合はこのページをソース表示して参考に!
設定は以上で終了。。
削除機能を追加!
普段は削除の機能を付けていないのですが、今回は公開しているのもあって追加してみました。
PHP unlinkで「bbs.txt」を削除しているだけです!
<form method="POST" action="die.php">
<button type="submit">全件削除</button>
</form>
die.php
<?php
unlink('bbs.txt');
echo "削除完了";
?>
<!DOCTYPE html><html lang="ja"><head><meta charset="UTF-8"><title></title><meta http-equiv="refresh" content="2;URL=./"></head><body></body></html>
URLの箇所はお使いの環境に合わせ、変更してください。
まとめ
複雑になるため個別の削除機能はありませんが、自動生成された「bbs.txt」をサーバーから弄(いじ)ることで編集は可能です。
管理人は多忙につき、妙な投稿があれば、私に代わって削除して頂ければ感謝します!
PHP掲示板 テスト用