回答編集履歴
4
実験方法について追記
answer
CHANGED
@@ -15,4 +15,4 @@
|
|
15
15
|
$stmt = $pdo->prepare("SELECT user_data.id,birth_year,birth_month,birth_day,pref,city,major_category,major_skill,cont_date,introduction FROM user_data,user_pr WHERE user_data.id=user_pr.user_id ORDER BY id DESC LIMIT ?, 5;");
|
16
16
|
$stmt->execute([$page * 5]);
|
17
17
|
```
|
18
|
-
このように、prepareを使ってページ番号をSQLに渡してやることで、何ページ目であってもこのSQLで対応可能というわけです。
|
18
|
+
このように、prepareを使ってページ番号をSQLに渡してやることで、何ページ目であってもこのSQLで対応可能というわけです。試しにこう処理を変えた後に、URLに直接「?page=1」や「?page=2」と追加してジャンプしてみてください。動作が確認できると思います。
|
3
5倍にする処理が抜けていたので修正
answer
CHANGED
@@ -13,6 +13,6 @@
|
|
13
13
|
```PHP
|
14
14
|
$page = $_GET["page"];//pageというパラメータに現在のページが入っているものとする
|
15
15
|
$stmt = $pdo->prepare("SELECT user_data.id,birth_year,birth_month,birth_day,pref,city,major_category,major_skill,cont_date,introduction FROM user_data,user_pr WHERE user_data.id=user_pr.user_id ORDER BY id DESC LIMIT ?, 5;");
|
16
|
-
$stmt->execute([$page]);
|
16
|
+
$stmt->execute([$page * 5]);
|
17
17
|
```
|
18
18
|
このように、prepareを使ってページ番号をSQLに渡してやることで、何ページ目であってもこのSQLで対応可能というわけです。
|
2
追記
answer
CHANGED
@@ -9,6 +9,10 @@
|
|
9
9
|
```
|
10
10
|
するとlist.phpに$_GET["page"]の形で「何ページ目をクリックしたか」が渡されますよね?
|
11
11
|
そしたらSELECTのLIMITを使って「レコード全体の中から(ページ数*5)番目から5件引き出して表示」するだけです。例えば今は1ページに5件表示したいとのことですのでこんな感じになるでしょう。
|
12
|
-
|
13
|
-
|
14
|
-
|
12
|
+
|
13
|
+
```PHP
|
14
|
+
$page = $_GET["page"];//pageというパラメータに現在のページが入っているものとする
|
15
|
+
$stmt = $pdo->prepare("SELECT user_data.id,birth_year,birth_month,birth_day,pref,city,major_category,major_skill,cont_date,introduction FROM user_data,user_pr WHERE user_data.id=user_pr.user_id ORDER BY id DESC LIMIT ?, 5;");
|
16
|
+
$stmt->execute([$page]);
|
17
|
+
```
|
18
|
+
このように、prepareを使ってページ番号をSQLに渡してやることで、何ページ目であってもこのSQLで対応可能というわけです。
|
1
SQL文に不要箇所があったので修正
answer
CHANGED
@@ -10,5 +10,5 @@
|
|
10
10
|
するとlist.phpに$_GET["page"]の形で「何ページ目をクリックしたか」が渡されますよね?
|
11
11
|
そしたらSELECTのLIMITを使って「レコード全体の中から(ページ数*5)番目から5件引き出して表示」するだけです。例えば今は1ページに5件表示したいとのことですのでこんな感じになるでしょう。
|
12
12
|
```SQL
|
13
|
-
SELECT user_data.id,birth_year,birth_month,birth_day,pref,city,major_category,major_skill,cont_date,introduction FROM user_data,user_pr WHERE user_data.id=user_pr.user_id ORDER BY id DESC LIMIT page * 5, 5
|
13
|
+
SELECT user_data.id,birth_year,birth_month,birth_day,pref,city,major_category,major_skill,cont_date,introduction FROM user_data,user_pr WHERE user_data.id=user_pr.user_id ORDER BY id DESC LIMIT page * 5, 5
|
14
14
|
```
|