PHPとMySQLを使った掲示板の作り方を初心者向けに7ステップ解説

プログラミング・PHP学習
スポンサーリンク

Progate(プロゲート)や本でPHPの基本を学んだ後は、実際のWebアプリを作ってみたいですよね。

じゅんこ
じゅんこ

あまり難しいものは挫折しそうだし、何を作ったらよいかな。

40代でプログラミングを学び、Progateをひととおり終えたとき、私は、こう感じました。

調べた結果、「最初に作るWebアプリとしては簡易掲示板が良い」という結論に。

掲示板なら機能も少なめですし、PHPとMySQLを使いながら作るので、データベースの使い方も習得できます。

そこで家族で週末の予定を話し合う掲示板を作ってみました。

下記をログインすると実際の掲示板を試せます。

↓↓↓

スポンサーリンク

掲示板作成手順

作成の手順は7つのページに分けて解説しています。

順番にご覧ください。

① 設計図を作って、MySQLの準備をしよう

どんな掲示板にするか、青写真を考えます。

これに合わせて、データベースの項目を考え、実際にMySQL上にデータベースを作成します。

②会員登録画面をつくる 前編

次にPHPとHTMLで会員登録画面を作ります。

HTMLのフォームとPHPを連携させる方法を解説します。

③会員登録画面をつくる 後編

会員登録をする際、きちんとした値を入れてもらう必要があります。

そのためにパスワードが短すぎたり、フォームが空欄だったりしたときにはエラーを返す設定をします。

エラーの出し方を解説します。

④会員登録確認画面をつくる

確認画面を作ります。

ここからいよいよMySQLとの連携が始まります。

ユーザーが入力した情報をMySQLに保存する方法を解説します。

⑤ログイン画面をつくる

登録した情報を使って、実際にログインをします。

ユーザーが入力した情報が、MySQL上の情報と合っている時だけログインできる仕組みを作っていきます。

⑥投稿画面をつくる

ログイン後の投稿画面を作ります。

セキュリティ対策のため、トークンを発行し、セッションのトークンと投稿されたトークンが同じときだけ投稿が可能、という仕組みを作ります。

⑦削除画面をつくる

投稿画面に、消したい投稿を削除できるオプションを追加します。

ただしなんでも消せると困るので、ログインしたユーザーが自分の投稿だけ削除できるようにします。

ここでもMySQLとの照合を行い、ログインユーザー=投稿者であるときのみ削除できる仕組みを作っていきます。

簡易掲示板作成によって習得できるPHPスキル

簡易掲示板を作ることで、次のスキルがつきます。

  • MySQLとPHPの連携方法
  • HTMLのフォームとPHPの連携方法
  • PHPを使ったWebアプリの設計の仕方
  • PHPによるセキュリティ対策の仕方

作成中に色々調べる癖がつきますし、実際にちゃんと作成できると、自信もつきます。

なお私は作成中はかなり行き詰り、たった数行のコードを考えるのに、何時間も不毛に悩んだりもしました。

ただ、そのあとにきちんと動作できた時の喜びは、大きかったです。

「あ、自分で作ったコードでもちゃんと動くんだ!」と、心の中で小躍りしました^^

開発環境について

最初に私の開発環境を紹介しておきますね。

開発環境 Windows・XamppとMYSQL利用
本番環境 Xserver利用

MACだとXAMPPではなくMAMPですが、大きな違いはないかと思います。

なおXserverではMYSQLが使えます。

開発環境のMYSQLをエクスポートしたデータは、問題なくXserverのMYSQLにインポートできました。

ただ公開しないのであれば、本番環境は不要です。

参考教材について

いちから掲示板を作るのは大変なので、参考教材があるとかなりの時間短縮になります。

私は たにぐち先生のUdemyの動画講座と、下記の本で掲示板の作り方を学びました。

Udemy講座は下記をクリックすると詳細をご覧いただけます。

↓↓↓

PHP+MySQL(MariaDB) Webサーバーサイドプログラミング入門

 

本とUdemy講座の内容はほぼ同じながら、文字と動画で学ぶと、知識が深まります。

ただMySQLとの接続が分かりやすく書かれた良い教材ながら、セキュリティに関する項目は少ないです。

紹介されたパスワード変換法は古く形式で、トークンに関する項目がありません。

てんこ盛りになるのを避けるために、あえて入れていらっしゃらないのかもしれませんが。

今回紹介する簡易掲示板では、こういった部分を加えたりと、色々とアレンジしています。

さいごに

次回から掲示板の作り方を解説していきます。

じゅんこ
じゅんこ

ひとつずつ、ステップをこなしていきましょうー♪

 

プログラミング・PHP学習

【無料プレゼント】

「LaravelでWebアプリをいちから作れるようになりたい!」

そんなLaravel初心者のあなたへ【Laravelの教科書】基礎編プレゼント中!
会員制フォーラムサイトを学習しながら作れます。

詳細はこちらをクリック

【個別サポート実施中】

「本ブログに記載の方法を試してみたけれど、うまくいかない」「コードを見てほしい」という方のために、有償でメールサポートいたします。以下のボタンをクリックして相談フォームにアクセスして下さい。

詳しく見る

Twitter始めました。
スポンサーリンク
40代からプログラミング!

コメント

タイトルとURLをコピーしました