【超初心者向け】お店レビューアプリのRead機能を作成しよう

あけお

スクールに多額のお金を支払う前に、僕の記事で学習してみてね!!

こんな人に読んでほしい
  1. 基礎は学んだけど、アプリ作成って何をすればいいの?
  2. そもそも何を勉強すればいいの?
  3. ポートフォリオ作らなきゃヤバい、、
https://akeoblog.com/phptutorial/
目次

この記事でやること

  • Read機能を作成する体験をする
  • お店レビューの一覧表示機能を作成する

1. 一覧表示機能を作成する準備をしよう

ここでは、「簡易的なTwitterアプリ」を参考に「お店レビューアプリ」の「一覧表示機能」を作成します。
似たような機能をいくつか作成する経験をすることで理解が深まります。

まだ、「簡易的なTwitterアプリ」を学習していない方は、先に学びましょう。
以下の記事で学べます!!!

https://akeoblog.com/phpsimpletwitterapp/

1. GitHubを開きます。

以下のURLからサイトを開きます。
https://github.com/Aka023v/restaurant-review-read

2. 「Codespaces」を使い、環境構築をします。

※ 環境構築方法がわからない方は、以下URLの記事を参考にしましょう!

https://akeoblog.com/gitgithubcodespaces/

2. 一覧表示機能を作成しよう

1. 現在の状況を把握しよう

環境構築を「1. 一覧表示機能を作成する準備をしよう」でしたかと思います。

環境構築後に「index.php」を確認すると、以下の画像のようになっています。

index.php

2. index.phpに一覧表示機能を作成しよう

以下の画像と同じになるようにコードを修正しましょう!
※ 以下の「簡易的なTwitterアプリ」の「投稿一覧ページ(index.php)」を参考にしよう。
https://github.com/Aka023v/simple-twitter

3. ヒントを確認しよう

「お店レビュー一覧ページ」を作成する仕方がわからない方はこちらでヒントを見よう。

①「Twitterアプリ」の「投稿一覧ページ(index.php)」をコピペしよう

②「アプリ名」等を変更しよう

動画では、画面を確認するために、PHPのコードをコメントアウトしました。

③ 「データの取得」を修正しよう

ここからは少し難しいです!!!

まず、「DBの接続設定」を修正します。

次に、「データの取得」を修正します。

「データの取得」ができているか確認をしましょう。

「取得したデータ」と「DBのデータ」が同じか確認をしましょう。

※ PHPMyAdminの使い方は、以下の記事を参考にしよう。

あわせて読みたい
【超優秀初学者は必ず使うべき】PHPMyAdminとは?Mysql?SQL? あけお スクールに多額のお金を支払う前に、僕の記事で学習してみてください https://akeoblog.com/aboutphpapppractice/ この記事でやること PHPMyAdminを実際に動かす...

④ DBからの「データの表示」を修正しよう

まず、tableを修正します。

次に、データを表示する箇所を修正します。
※ PHPMyAdminを見ることで、どのように修正すれば良いかわかります。

最後は、以下の画面になります。

4. お店レビュー一覧ページの回答

回答を確認しましょう!
できなかった方は、以下のコードを真似して修正してみましょう。

<?php
$dbh = new PDO(
  'mysql:dbname=restaurant_review;host=mysql;charset=utf8',
  'root',
  'password'
);

$query = "SELECT * FROM review";
$stmt = $dbh->query($query);
$reviews = $stmt->fetchAll();
?>

<body>
  <div>
    <h1>レストランのレビューアプリ</h1>
    <a href="./create.php">reviewする</a><br>
    <table border="1">
      <tr>
        <th>投稿者名</th>
        <th>レストラン名</th>
        <th>レビュー</th>
        <th>編集</th>
        <th>削除</th>
      </tr>
      <?php foreach ($reviews as $review) : ?>
        <tr>
          <td><?php echo $review['poster']; ?></td>
          <td><?php echo $review['restaurant_name']; ?></td>
          <td><?php echo $review['review']; ?></td>
          <td><a href="./edit.php?id=<?php echo $tweet['id'] ?>">編集</a></td>
          <td><a href="./delete.php?id=<?php echo $tweet['id'] ?>">削除</a></td>
        </tr>
      <?php endforeach; ?>
    </table>
  </div>
</body>


よかったらシェアしてね!
目次