PHP 学習 part. 11
Web アプリケーション
掲示板の続きです。
ひとこと掲示板
DB にアクセスして投稿された内容を表示させます。
<body> <h1>ひとこと掲示板</h1> <form action="bbs.php" method="post"> 名前: <input type="text" name="name" /><br /> ひとこと: <input type="text" name="comment" size="60" /><br /> <input type="submit" name="submit" value="送信" /> </form> <?php require("print_content.php") ?> </body>
print_content.php
<?php // phpMyAdmin に接続 $url = "localhost"; $user = "root"; $pass = ""; $db = "online_bbs"; $mysqli = new mysqli($url, $user, $pass, $db); if ($mysqli->connect_errno) { printf("Connect failed: %s\n", $mysqli->connect_error); exit(); } $mysqli->set_charset('utf8'); $sql = "SELECT * FROM `post` ORDER BY `created_at` DESC"; $result = $mysqli->query($sql); if ($result !== false && mysqli_num_rows($result)) { echo "<ul>"; while ($post = mysqli_fetch_assoc($result)) { echo "<li>"; echo htmlspecialchars($post["name"], ENT_QUOTES, "UTF-8"), ": "; echo htmlspecialchars($post["comment"], ENT_QUOTES, "UTF-8"), " - "; echo htmlspecialchars($post["created_at"], ENT_QUOTES, "UTF-8"); echo "</li>"; } echo "</ul>"; } // 取得結果を解放し、接続を閉じる mysqli_free_result($result); $mysqli->close();
更新するとフォームの再送信とかで同じ内容が投稿されてしまいますが、まあいいでしょう。
フレームワークによる開発
MVC もでる
Model, View, Controller という3つの役割に分けて開発を行うアーキテクチャです。Web 系の言語で良く見かけると思います。
モデルでは、データベースにアクセスしてデータのやり取りを行う機能を記述します。ビューは、HTML の組み立てを行い出力します。コントローラは、ユーザのリクエストを制御します。
本
- 作者: 小川雄大,柄沢聡太郎,橋口誠
- 出版社/メーカー: 技術評論社
- 発売日: 2014/10/31
- メディア: Kindle版
- この商品を含むブログを見る
感想
フレームワークによる勉強は、この本が終わったあとに Laravel をやろうと思います。