- ログインが「あなたが誰かをアプリが知ること」だと分かる
- user_id で、人ごとに記録を分けると分かる
- 九九アプリで「自分の記録だけ」が見える理由が分かる
パソコンとブラウザをつかいます。15〜20分。
ログイン=名のり
だい2回で、Google のアカウントを作ったよね。ログインは、その作ったアカウントで「わたしは○○です」とアプリに名のることです。
名のると、アプリは「ああ、あなたね」と分かる。ログインとは、ようするに アプリが「あなたが誰か」を知ることなんだ。
user_id:その人のしるし
Google でログインすると、アプリはあなた専用の番号を受け取ります。これが user_id。世界にひとつ、あなただけのしるしです。
九九アプリは、記録を保存するとき、その記録に user_id をくっつけます。だい21回で見た表 attempts の user_id のところに、あなたの番号が入るんだ。
▼ attempts という表(あなたの番号がつく)user_id dan multiplier is_correct
あなた 7 8 true
あなた 3 6 false
だから、あとで記録を見せるときは「自分の user_id の行だけ」えらべばいい。だい22回でやった WHERE をおぼえてる? あれでこう書きます↓
SELECT * FROM attempts
WHERE user_id = "あなた"
// → あなたの行だけ ぜんぶ出てくる
これが、九九アプリで自分の記録だけ出るしくみ。ほかの人の番号の行は、WHERE でよけているから見えないんだね。
/kukuのページを開いて、ログインとログアウトを1回ずつしてみる- ログインすると自分の記録が出て、ログアウトすると見えなくなるのをたしかめる
- (大人といっしょに)べつのアカウントでもログインして、記録がべつべつになっているのを見る
記録が人ごとに分かれているのは、user_id が人ごとにちがうから。同じアプリでも、見える中身は人によってちがうんだね。
💡 自分のことばで言ってみよう:「なんで自分の記録だけ出るの?」を自分のことばで説明して、AI に「あってる?」と確かめてもらおう。「user_id」と「WHERE」のことばが出てきたら、ばっちりです。
- ログインって何をすること?(→ アプリに「あなたが誰か」を知ってもらうこと)
- 人ごとに記録を分けているのは何?(→
user_id、その人だけのしるし) - 自分の行だけ出す SQL の考えは?(→
WHERE user_id = 自分でしぼる)
つぎの回(だい25)では、「ログインした人だけが見られるページ」を作って、ログインしていない人をどう止めるかを見ます。