---
layout: "@/layouts/MarkdownLayout.astro"
---
import Toc from "../../components/Toc.astro";
export const title = "総合演習:Twitterのようなアプリを作ろう";
# {title}
これまでPHPとMySQLについて学んできました。
ここでは、それらを組み合わせて**Twitterのような投稿アプリ**を作成します。
## TOC
## これまで学んだこと
### PHPで学んだこと
- 変数と配列
- フォームからのデータ受け取り(`$_POST`)
- 条件分岐(`if`文)
- 繰り返し処理(`foreach`)
- Sessionを使った状態管理
### MySQLで学んだこと
- データベースとテーブルの作成
- データの追加(`INSERT`)
- データの取得(`SELECT`)
- データの削除(`DELETE`)
- データの更新(`UPDATE`)
## 総合演習の目的
PHPとMySQLを組み合わせることで、以下のようなことができるようになります:
1. **ユーザーの入力を保存する** - フォームで受け取ったデータをデータベースに保存
2. **保存したデータを表示する** - データベースから取り出して画面に表示
3. **データを操作する** - 削除や更新などの操作
4. **複数のユーザーで共有する** - データベースに保存されているので、誰がアクセスしても同じデータが見える
## 何を作るか
**X(旧Twitter)のような投稿アプリ**を作ります。
**主な機能:**
- つぶやきを投稿できる
- 投稿は新しい順に表示される(タイムライン)
- (発展)いいね機能
- (発展)削除機能
**完成イメージ:**
シンプルですが、実際のSNSと同じように動作します。
他の人が投稿すると、自分の画面にも表示されます!
## 学習の進め方
この演習は**段階的に機能を追加していく**形式です。
### STEP1: 基本機能(必須)
まず、最小限の機能で「動くアプリ」を作ります。
- つぶやきの投稿
- タイムラインの表示
### STEP2: 機能追加(発展)
基本機能ができたら、以下の機能を追加していきます。
- いいね機能
- 削除機能
- その他の改善
焦らず、STEP1から順番に進めましょう!
[課題ページへ →](/final-work/010-twitter)