質問編集履歴
6
書式の修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -136,4 +136,18 @@
|
|
136
136
|
間違った解釈を私していると思うんです。
|
137
137
|
申し訳ありません。
|
138
138
|
そこのところ、もう少しわかりやすく教えてください
|
139
|
-
よろしくお願います
|
139
|
+
よろしくお願います
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
pageには、page番号ではなく表示開始件数が入ります。
|
144
|
+
っと書いてありますが、すいません。その記述はどこにあるのでしょうか?
|
145
|
+
```lang-<php>
|
146
|
+
$sql = "select * from item
|
147
|
+
left join author on item.author_id = author.author_id
|
148
|
+
where $where order by " . mysql_real_escape_string( $_GET['sort'] ) . " limit ${_GET['page']}, ${_GET['rows']}";
|
149
|
+
$result2 = mysql_query( $sql );
|
150
|
+
```
|
151
|
+
|
152
|
+
この部分も教えてください。
|
153
|
+
すいません。
|
5
書式の改善
title
CHANGED
File without changes
|
body
CHANGED
@@ -93,7 +93,7 @@
|
|
93
93
|
```
|
94
94
|
この部分で表示開始件数がわからないです。
|
95
95
|
この$_GET['page']はページ数のみgetするのはないのですか?
|
96
|
-
つまりたとえば$_GET['page'] + $_GET['rows']で1ページ目は
|
96
|
+
つまりたとえば$_GET['page'] + $_GET['rows']で1ページ目は20件、2ページ目1件まで、
|
97
97
|
$_GET['page']で2をゲットしたら22件ではないのですか?
|
98
98
|
$_GET['page']が表示開始件数を手にしている部分はどこですか?
|
99
99
|
|
4
書式の改善
title
CHANGED
File without changes
|
body
CHANGED
@@ -41,6 +41,8 @@
|
|
41
41
|
if ( $_GET['page'] + $delta > $num_rows ) $e = $num_rows; else $e = $_GET['page'] + $delta;
|
42
42
|
|
43
43
|
|
44
|
+
|
45
|
+
|
44
46
|
?>
|
45
47
|
<? require( 'header.php' ) ?>
|
46
48
|
<? require( 'topbar.php' ) ?>
|
@@ -77,43 +79,61 @@
|
|
77
79
|
という本を買って読んでいるのですが、
|
78
80
|
このresult.phpのページング処理がよくわかりません。
|
79
81
|
教えてください。
|
80
|
-
|
82
|
+
`
|
81
83
|
|
82
|
-
特に下の部分がなにをしているのかよくわかりません
|
83
84
|
```lang-<php>
|
85
|
+
/*
|
84
|
-
|
86
|
+
* 変数eは 表示開始件数 + delta がnum_rowsより上回る時に最大件数
|
85
|
-
|
87
|
+
*(一番最後のページリンクを作るため)
|
88
|
+
* 上回る時には表示開始件数 + delta
|
86
|
-
|
89
|
+
* これは、現在のページより2ページ次のページまでページリンクを表示させたい為
|
90
|
+
*/
|
87
91
|
if ( $_GET['page'] + $delta > $num_rows ) $e = $num_rows; else $e = $_GET['page'] + $delta;
|
88
92
|
|
93
|
+
```
|
94
|
+
この部分で表示開始件数がわからないです。
|
95
|
+
この$_GET['page']はページ数のみgetするのはないのですか?
|
96
|
+
つまりたとえば$_GET['page'] + $_GET['rows']で1ページ目は21件まで、
|
97
|
+
$_GET['page']で2をゲットしたら22件ではないのですか?
|
98
|
+
$_GET['page']が表示開始件数を手にしている部分はどこですか?
|
89
99
|
|
100
|
+
```lang-<php>
|
101
|
+
<?php /* 表示開始件数が表示件数を上回る場合に戻るリンクを表示させます。*/ ?>
|
102
|
+
<? if ( $_GET['page'] >= $_GET['rows'] ) { ?>
|
103
|
+
<?php
|
104
|
+
/*
|
105
|
+
* 現在の検索結果を引き継ぎたいのでとりあえずGETパラメータは全て入れる。
|
106
|
+
* 以下のURLを表示させます。
|
107
|
+
* result.php?page=[表示開始件数 - 表示件数]&rows=[表示件数]&author_id=[その他id]& category_id=[カテゴリID]&query=[商品名の一部か全部]&sort=[表示順]
|
108
|
+
*/
|
90
109
|
?>
|
91
|
-
<? require( 'header.php' ) ?>
|
92
|
-
<? require( 'topbar.php' ) ?>
|
93
|
-
<div align="center">
|
94
|
-
<h2>検索結果<?= $num_rows ?>件中<?= $_GET['page'] + 1 ?>件から<?= $_GET['page'] + $_GET['rows'] ?>件までを表示</h2>
|
95
|
-
<table>
|
96
|
-
<? while ( $item = mysql_fetch_array( $result2 ) ) { ?>
|
97
|
-
<tr>
|
98
|
-
<td>
|
99
|
-
<a href="item.php?item_id=<?= $item['item_id'] ?>"><img src="<?= $item['image_url'] ?>" width=90 alt="<?= $item['item_name'] ?>" align="top" border=0></a>
|
100
|
-
</td>
|
101
|
-
<td>
|
102
|
-
<a href="item.php?item_id=<?= $item['item_id'] ?>"><?= $item['item_name'] ?> <?= $item['author_name'] ?></a><br>
|
103
|
-
価格 <?= $item['sale_price'] ?> 円(税込み)
|
104
|
-
</td>
|
105
|
-
</tr>
|
106
|
-
<? } ?>
|
107
|
-
</table>
|
108
|
-
<? if ( $_GET['page'] >= $_GET['rows'] ) { ?>
|
109
110
|
<a href="result.php?page=<?= $_GET['page'] - $_GET['rows'] ?>&rows=<?= $_GET['rows'] ?>&author_id=<?= $_GET['author_id'] ?>&category_id=<?= $_GET['category_id'] ?>&query=<?= $_GET['query'] ?>&sort=<?= $_GET['sort'] ?>">前のページ </a>
|
110
111
|
<? } ?>
|
111
|
-
<? for ( $m = $s; $m <= $e; $m = $e++ ) { ?>
|
112
|
-
<a href="result.php?page=<?= $m ?>&rows=<?= $_GET['rows'] ?>&author_id=<?= $_GET['author_id'] ?>&category_id=<?= $_GET['category_id'] ?>&query=<?= $_GET['query'] ?>&sort=<?= $_GET['sort'] ?>">
|
113
|
-
<? if ( $m == $_GET['page'] ) echo "<big><b>" . $m / $_GET['rows'] . "</b></big>"; else echo $m / $_GET['rows'] ?></a>
|
114
|
-
<
|
112
|
+
<!-- 戻るリンクの表示終了。 -->
|
113
|
+
|
114
|
+
```
|
115
|
+
表示開始件数と$_GET['page']がよくわかりません。
|
116
|
+
<?= $_GET['page'] - $_GET['rows'] ?>にするとマイナスになってしまうのでは?
|
117
|
+
|
118
|
+
```lang-<php>
|
119
|
+
<?php /*最大表示件数が表示開始件数を上回る場合に進むリンクを表示させます。*/ ?>
|
115
120
|
<? if ( $num_rows > $_GET['page'] + 1 ) { ?>
|
121
|
+
<?php
|
122
|
+
/*
|
123
|
+
* 現在の検索結果を引き継ぎたいのでとりあえずGETパラメータは全て入れる。
|
124
|
+
* 以下のURLを表示させます。
|
125
|
+
* result.php?page=[表示開始件数 + 表示件数]&rows=[表示件数]&author_id=[その他id]& category_id=[カテゴリID]&query=[商品名の一部か全部]&sort=[表示順]
|
126
|
+
*/
|
127
|
+
?>
|
116
128
|
<a href="result.php?page=<?= $_GET['page'] + $_GET['rows'] ?>&rows=<?= $_GET['rows'] ?>&author_id=<?= $_GET['author_id'] ?>&category_id=<?= $_GET['category_id'] ?>&query=<?= $_GET['query'] ?>&sort=<?= $_GET['sort'] ?>"> 次のページ</a>
|
117
129
|
<? } ?>
|
130
|
+
<!-- 進むリンクの表示終了。 -->
|
118
131
|
<? require( 'footer.php' ) ?>
|
119
|
-
```
|
132
|
+
```
|
133
|
+
|
134
|
+
表示開始件数の意味と
|
135
|
+
$_GET['page']がページ数のみgetしていると思っていたのがもしかして
|
136
|
+
間違った解釈を私していると思うんです。
|
137
|
+
申し訳ありません。
|
138
|
+
そこのところ、もう少しわかりやすく教えてください
|
139
|
+
よろしくお願います
|
3
書式の変更
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,5 +1,4 @@
|
|
1
|
-
|
1
|
+
```lang-<php>
|
2
|
-
|
3
2
|
// result.php
|
4
3
|
|
5
4
|
require( 'config.php' );
|
@@ -71,7 +70,9 @@
|
|
71
70
|
<a href="result.php?page=<?= $_GET['page'] + $_GET['rows'] ?>&rows=<?= $_GET['rows'] ?>&author_id=<?= $_GET['author_id'] ?>&category_id=<?= $_GET['category_id'] ?>&query=<?= $_GET['query'] ?>&sort=<?= $_GET['sort'] ?>"> 次のページ</a>
|
72
71
|
<? } ?>
|
73
72
|
<? require( 'footer.php' ) ?>
|
73
|
+
```?
|
74
74
|
|
75
|
+
|
75
76
|
PHPによるECサイトプログラミング~ショッピングカートから決済まで―MySQLのデータベース設計とPHPセッション管理の作法
|
76
77
|
という本を買って読んでいるのですが、
|
77
78
|
このresult.phpのページング処理がよくわかりません。
|
@@ -79,7 +80,7 @@
|
|
79
80
|
よろしくお願いします。
|
80
81
|
|
81
82
|
特に下の部分がなにをしているのかよくわかりません
|
82
|
-
|
83
|
+
```lang-<php>
|
83
84
|
$delta = 3 * $_GET['rows'];
|
84
85
|
|
85
86
|
if ( $_GET['page'] - $delta < 0 ) $s = 0; else $s = $_GET['page'] - $delta;
|
@@ -114,4 +115,5 @@
|
|
114
115
|
<? if ( $num_rows > $_GET['page'] + 1 ) { ?>
|
115
116
|
<a href="result.php?page=<?= $_GET['page'] + $_GET['rows'] ?>&rows=<?= $_GET['rows'] ?>&author_id=<?= $_GET['author_id'] ?>&category_id=<?= $_GET['category_id'] ?>&query=<?= $_GET['query'] ?>&sort=<?= $_GET['sort'] ?>"> 次のページ</a>
|
116
117
|
<? } ?>
|
117
|
-
<? require( 'footer.php' ) ?>
|
118
|
+
<? require( 'footer.php' ) ?>
|
119
|
+
```
|
2
書式の変更
title
CHANGED
File without changes
|
body
CHANGED
@@ -77,7 +77,9 @@
|
|
77
77
|
このresult.phpのページング処理がよくわかりません。
|
78
78
|
教えてください。
|
79
79
|
よろしくお願いします。
|
80
|
+
|
80
|
-
特に
|
81
|
+
特に下の部分がなにをしているのかよくわかりません
|
82
|
+
|
81
83
|
$delta = 3 * $_GET['rows'];
|
82
84
|
|
83
85
|
if ( $_GET['page'] - $delta < 0 ) $s = 0; else $s = $_GET['page'] - $delta;
|
@@ -112,6 +114,4 @@
|
|
112
114
|
<? if ( $num_rows > $_GET['page'] + 1 ) { ?>
|
113
115
|
<a href="result.php?page=<?= $_GET['page'] + $_GET['rows'] ?>&rows=<?= $_GET['rows'] ?>&author_id=<?= $_GET['author_id'] ?>&category_id=<?= $_GET['category_id'] ?>&query=<?= $_GET['query'] ?>&sort=<?= $_GET['sort'] ?>"> 次のページ</a>
|
114
116
|
<? } ?>
|
115
|
-
<? require( 'footer.php' ) ?>
|
117
|
+
<? require( 'footer.php' ) ?>
|
116
|
-
の部分がさっぱりわかりません。
|
117
|
-
よろしくお願いします
|
1
書式修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -112,4 +112,6 @@
|
|
112
112
|
<? if ( $num_rows > $_GET['page'] + 1 ) { ?>
|
113
113
|
<a href="result.php?page=<?= $_GET['page'] + $_GET['rows'] ?>&rows=<?= $_GET['rows'] ?>&author_id=<?= $_GET['author_id'] ?>&category_id=<?= $_GET['category_id'] ?>&query=<?= $_GET['query'] ?>&sort=<?= $_GET['sort'] ?>"> 次のページ</a>
|
114
114
|
<? } ?>
|
115
|
+
<? require( 'footer.php' ) ?>
|
115
|
-
の部分
|
116
|
+
の部分がさっぱりわかりません。
|
117
|
+
よろしくお願いします
|