質問編集履歴

1

コードの「前のページへ」と「次のページへ」のリンク設定のコードをechoからprintに変えました。

2018/08/12 05:20

投稿

spcl
spcl

スコア19

test CHANGED
File without changes
test CHANGED
@@ -10,6 +10,8 @@
10
10
 
11
11
 
12
12
 
13
+
14
+
13
15
  エラーはNotice: Undefined indexと表示されるので調べたところ
14
16
 
15
17
  初回アクセス時と2回目以降のアクセスで処理を切り分けていないということっぽいのですが
@@ -22,7 +24,17 @@
22
24
 
23
25
 
24
26
 
27
+ 追記です。
28
+
29
+ 少しコードを修正しました。
30
+
31
+ 「前のページへ」と「次のページへ」のリンク設定のコードをechoからprintに変えました。
32
+
33
+ するとページ送りはうまく動きましたがエラーの表示は消えません。
34
+
35
+
36
+
25
- 下記がコードです。
37
+ 新しいコードです。
26
38
 
27
39
 
28
40
 
@@ -64,8 +76,190 @@
64
76
 
65
77
 
66
78
 
79
+
80
+
67
81
  <div id="menu_list">
68
82
 
83
+
84
+
85
+
86
+
87
+ <table class="menu_list">
88
+
89
+ <tr>
90
+
91
+ <th>商品管理ID</ht>
92
+
93
+ <th>カテゴリー</ht>
94
+
95
+ <th class="menu_name">商品名</ht>
96
+
97
+ <th>価格</ht>
98
+
99
+ <th class="menu_remarks">備考</ht>
100
+
101
+ <th>編集</ht>
102
+
103
+ <th>削除</ht>
104
+
105
+ </tr>
106
+
107
+ <?php
108
+
109
+
110
+
111
+ $recodeSet = $mysqli->query('SELECT * FROM menu ORDER BY id LIMIT '.$start.',5');
112
+
113
+
114
+
115
+ while($table = mysqli_fetch_assoc($recodeSet)){
116
+
117
+
118
+
119
+ ?>
120
+
121
+
122
+
123
+ <tr>
124
+
125
+ <td class="menu_content"><?php echo(htmlspecialchars($table['id'])); ?></td>
126
+
127
+ <td class="menu_content"><?php echo(htmlspecialchars($table['kind'])); ?></td>
128
+
129
+ <td class="menu_content"><?php echo(htmlspecialchars($table['name'])); ?></td>
130
+
131
+ <td class="menu_content"><?php echo(htmlspecialchars($table['price'])); ?></td>
132
+
133
+ <td class="menu_content"><?php echo(htmlspecialchars($table['remarks'])); ?></td>
134
+
135
+ <td class="menu_content"><a href="update.php?id=<?php echo(htmlspecialchars($table['id'])); ?>">編集</a></td>
136
+
137
+ <td class="menu_content"><a href="delete.php?id=<?php echo(htmlspecialchars($table['id'])); ?>" onclick="return confirmation();">削除</a></td>
138
+
139
+ </tr>
140
+
141
+
142
+
143
+
144
+
145
+ <?php
146
+
147
+ }
148
+
149
+ ?>
150
+
151
+
152
+
153
+ </table>
154
+
155
+
156
+
157
+ <ul class="paging">
158
+
159
+ <?php
160
+
161
+ if($page > 1){
162
+
163
+ ?>
164
+
165
+ <li><a href="index.php?page=<?php print($page - 1); ?>">前のページ</a></li>
166
+
167
+ <?php
168
+
169
+ } else {
170
+
171
+ ?>
172
+
173
+
174
+
175
+ <?php
176
+
177
+ }
178
+
179
+ ?>
180
+
181
+ <?php
182
+
183
+ if($page < $maxPage){
184
+
185
+ ?>
186
+
187
+ <li><a href="index.php?page=<?php print($page + 1); ?>">次のページ</a></li>
188
+
189
+ <?php
190
+
191
+ } else {
192
+
193
+ ?>
194
+
195
+
196
+
197
+ <?php
198
+
199
+ }
200
+
201
+ ?>
202
+
203
+ </ul>
204
+
205
+
206
+
207
+ <a href="http://localhost/menu/input.php">商品登録</a>
208
+
209
+ <a href="http://localhost/menu/menu-retrieval.php">カテゴリー別一覧</a>
210
+
211
+ </div>
212
+
213
+ ```
214
+
215
+
216
+
217
+ ↓↓↓はechoからprintに変える前のコードです。
218
+
219
+
220
+
221
+
222
+
223
+ ```
224
+
225
+ <?php
226
+
227
+ require('dbconnect.php');
228
+
229
+
230
+
231
+ $page = $_REQUEST['page'];
232
+
233
+ if($page ==''){
234
+
235
+ $page = 1 ;
236
+
237
+ }
238
+
239
+ $page = max($page, 1);
240
+
241
+
242
+
243
+ //最終ページを取得
244
+
245
+ $cnt = $mysqli->query('SELECT COUNT(*) AS cnt FROM menu');
246
+
247
+ $table = mysqli_fetch_assoc($cnt);
248
+
249
+ $maxPage = ceil($table['cnt'] / 5);
250
+
251
+ $page = min($page, $maxPage);
252
+
253
+ $start = ($page - 1) * 5;
254
+
255
+
256
+
257
+ ?>
258
+
259
+
260
+
261
+ <div id="menu_list">
262
+
69
263
  <table class="menu_list">
70
264
 
71
265
  <tr>