【第6話】作って学ぶPHP!初心者による実践録!~一覧画面①~

これからPHPの勉強を始める方に向けて!

PHP初心者の私が、実際に簡単なWebサイトを作成しながら学んでいく実践録です!!

この記事の目標は、同じく初心者の方が、実際に「作って学ぶ」を実践出来る内容を提示することです。

私自身は、他言語(C#、Javascriptなど)でのプログラミング経験がありますが、プログラミングを始めて勉強する方でも理解出来るように心がけて書いていきます。

ただし、HTML・CSSに関しては説明を省きます。ご了承ください。

また、分かりにくい所等あればコメント等頂けたら凄く喜びます。

こちらの記事は、「第6話」となっております。
第1話から読むことをオススメします!

 

やっとPHPを書き始めます!

前回、データベースとの接続を行うためのユーザーを作成し、
これで前準備が完了しました!

ということで、
今度こそ、やっとPHPを書くところに入っていきます!!

今回は、一覧画面の作成を行っていきましょう!!

 

一覧画面の作成

まずは、現状どうなっていたかを見てみましょうか。

第4話のデザイン編で、こんな画面が出来ていたと思います!

一覧

一覧

 

ここで表示しているデータは、固定で書いていただけでしたね。
なので、ここをデータベースから取得して表示するように書き換えていきます!!

表示するデータは、第5話のユーザー作成編でINSERTしておいたデータです!
まだデータ作ってないよ!という方は、先にデータを作っておきましょう!!

 

前提知識の勉強

まずは、前提の知識をちょっと勉強しておきましょう。

 

PHPのコードを書くときは

PHPを書く所

PHPを書く所

 

PHPを書く際には、画像の通りカッコの中に書いていきます。

また、PHPのロジックを書く場合は、HTMLのbodyとは別の所に書くのが良いとされています。HTMLへの出力は、このロジック部分で用意した変数を使って行います。ロジックとデザインは出来るだけ分離しておきましょう。

 

まあ、初心者の方にとってはよく分からないと思いますが、出来る限り、上の画像の通りHTML部分とは分けてPHPのロジックを書くようにしましょう!

(ちょっと慣れてきたら、PHPのロジックを別のファイルに分けることにもチャレンジしてみましょう!)

 

変数とは

上の説明で「変数」というものが出てきました。

変数とは、何かしらのを保管しておく収納スペースみたいなものをイメージしてもらえたらオッケーです!
また、収納スペースには名前を付けておく必要があります。

変数

変数

 

この画像の通り、

「$変数名 = 収納しておくもの;」
という書き方をします。
変数名」が収納スペースです。「$」が変数だよという目印になります。

 

また、PHPでは
1つの処理の終わり毎に、「;(セミコロン)」を書く必要があります!
書き忘れやすい所なので、ご注意ください。

上の画像では、変数に「anythingbookmarker」という文字列と、「[要素1, 要素2, ・・・]」という配列を収納しています。

「’」で囲うことで、文字列となりますし、
「[]」で囲うことで、配列となります。

配列に関しては、ちょっと難しい所でもあるので、
ここでは、そんなものがあるんだなってぐらいの認識でオッケーです!

 

気になる方は、自分で調べて勉強してみましょう!!

 

2つの文字を引っ付ける

文字を引っ付け方法もちょっと見ておきます。
これは単純。

「文字1 . 文字2」
引っ付けたい文字の間に「.(ドット)」を入れるだけ。

文字連結

文字連結

 

こんな感じで使います。

文字1 = ‘mysql:dbhost=localhost;dbname=’
文字2 = $db_name(’anythingbookmarker’)
文字3 = ‘;charset=utf8;’

文字の間に、変数に収納していた値を入れ込みたい場合ですね!

さて、前提知識のお勉強はここまで!!
ここまでの知識を使って、次はデータベースとの接続方法を勉強していきます!!

 




データベースとの接続

データベースからデータを取るためは、データベースとの接続を行うコードを書く必要があります。

まずは、そこからやっていきましょう!!

今回、データベースとの接続には「PDO(PHP Data Objects)」を使用していきます。

他にも接続方法は存在するのですが、現在の推奨方法が「PDO」なので特に理由がない場合はこちらを使用しましょう。

とりあえず、ざっくりどんなことが出来るか知りたい!!って方。
PDOを簡単にまとめてくれている記事がありましたので、そちらを紹介しておきます!

 

私の記事では、詳しい説明はしていきません!

どんなコードを書いて・どんな動きをするのか

ここに絞って書いていきます!!
ということで、さっそく。

PDOは「new演算子」を使ってインスタンスの作成を行います。

演算子とか、インスタンスとか、よくわからないって方。

「PDO」という便利ツールへの接続を「new」ってキーワードを使って新しく作るんだ!!ぐらいの認識を持ってもらえたらいったん大丈夫です。

 

ということで、書き方はこんな感じ。

$db = new PDO(‘データベース情報’,’ユーザ名’,’パスワード’,’接続時のオプション’)
 

PDOの後のカッコの中身をそれぞれ自分の環境に合わせて使用します。
そして、新しく作成したPDOという便利ツールを「$db」という変数に収納しておきます。(変数名はお好きな名前でかまいません。)

 

ここまでで、データベースとの接続に必要な知識をほぼ手に入れたので、実際にコードを書いてみます!

接続とりあえず

接続とりあえず

 

ここまでの知識で、DB接続のロジックが書けましたね!!

これで接続はオッケー!!

 

とはいきません!!!!

 

このままだと、
もしデータベースとの接続に失敗した時ロジックが破たんしてしまってシステムのエラーとなってしまいます!!
そして、何が原因でエラーとなっているのかも判断が出来ない状態です!

 

データベースという、Webサイトとは別の場所に接続を行うような場合、必ず失敗した時を想定したロジックにしてあげる必要があります。

 

ということで、その想定を加えてあげた最終的なDB接続ロジックがこちら。

DB接続ロジック

DB接続ロジック

 

はい。知らないものが出てきましたね・・・。

 

今回はここまで!

ちょっと長くなってしまったので、今回はここまで!!
次回、「知らないもの」を説明して、実際に一覧画面データ取得を作っていきます!!

記事の更新は、Twitterにて発信していきますので、フォローして頂ければ嬉しいです!!

 

質問・指摘はこちらから

プログラミング初心者の方は、本当にわからないことだらけだと思います。
そんな方へ、少しでも役立つことが出来れば嬉しいです。

分からない所があれば、こちらの記事にコメントを入れてください。
出来る限り回答していきます!
Twitterからの質問でもかまいません。

また、間違い等あればご指摘頂けると幸いです。
PHPに関しては、私自身キャッチアップ中のため至らない点もあるかと思います。
ご指摘頂いた内容は、随時修正していきます!

 

 

それでは、
のらくら でした!!

3 Comments

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です