質問編集履歴

1

質問詳細追加

2020/02/04 15:38

投稿

dog50
dog50

スコア26

test CHANGED
File without changes
test CHANGED
@@ -1 +1,209 @@
1
1
  同じphpファイルでSQL文を2個実行しその2つを表示させたいのですが、片方が表示されたら片白が表示出来なくなってしまうのですが、何故だか教えていただいたいです。
2
+
3
+
4
+
5
+ ```index.php
6
+
7
+ $List = [];
8
+
9
+ $List2 = [];
10
+
11
+
12
+
13
+ try {
14
+
15
+ $db = new PDO(Conf::DB_DNS, Conf::DB_USERNAME, Conf::DB_PASSWORD);
16
+
17
+ $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
18
+
19
+ $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
20
+
21
+
22
+
23
+
24
+
25
+
26
+
27
+ $offset = PER_PAGE * ($page - 1);
28
+
29
+ $sql = "SELECT * FROM product LIMIT ".$offset.",".PER_PAGE;
30
+
31
+ $stmt = $db->prepare($sql);
32
+
33
+ $result = $stmt->execute();
34
+
35
+
36
+
37
+
38
+
39
+ while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
40
+
41
+ $dp = [];
42
+
43
+ foreach ($row as $col => $val) {
44
+
45
+ $dp[$col] = $val;
46
+
47
+ }
48
+
49
+
50
+
51
+ $book = new Book();
52
+
53
+ $book->setId($dp['id']);
54
+
55
+ $book->setText($dp['text']);
56
+
57
+ $book->setBookimg($dp['img']);
58
+
59
+ $book->setBoName($dp['name']);
60
+
61
+
62
+
63
+ $List[$dp['book_id']] = $book;
64
+
65
+ }
66
+
67
+
68
+
69
+ $sql2 = "SELECT * FROM product ORDER BY regidtered LIMIT 5";
70
+
71
+ $stmt2 = $db->prepare($sql2);
72
+
73
+
74
+
75
+ while ($row2 = $stmt2->fetch(PDO::FETCH_ASSOC)) {
76
+
77
+ $dp2 = [];
78
+
79
+ foreach ($row2 as $col2 => $val2) {
80
+
81
+ $dp2[$col2] = $val2;
82
+
83
+ }
84
+
85
+
86
+
87
+ $book2 = new Book();
88
+
89
+ $book2->setId($dp2['id']);
90
+
91
+ $book2->setText($dp2['text']);
92
+
93
+ $book2->setBookimg($dp2['img']);
94
+
95
+ $book2->setBoName($dp2['name']);
96
+
97
+
98
+
99
+
100
+
101
+ $List2[$dp2['id']] = $book2;
102
+
103
+ }
104
+
105
+
106
+
107
+ require_once($_SERVER["DOCUMENT_ROOT"] . "tpl/index.php");
108
+
109
+ ```
110
+
111
+
112
+
113
+ ```index.php
114
+
115
+
116
+
117
+ <section>
118
+
119
+ <tbody>
120
+
121
+ <div class="box">
122
+
123
+ <?php
124
+
125
+ if (empty($List)) {
126
+
127
+ ?>
128
+
129
+ <tr>
130
+
131
+ <td colspan="5">商品は存在しません。</td>
132
+
133
+ </tr>
134
+
135
+ <?php
136
+
137
+ }
138
+
139
+ else {
140
+
141
+ ?>
142
+
143
+ <h3>新着商品</h3>
144
+
145
+ <?php foreach ($List2 as $book2) { ?>
146
+
147
+
148
+
149
+ <ul id="bookimg">
150
+
151
+ <li><img src= "<?= $book2->getBookimg()?>"></li>
152
+
153
+ <li id="box2"><?= $book2->getBoName() ?></li>
154
+
155
+
156
+
157
+ </ul>
158
+
159
+ <?php } ?>
160
+
161
+
162
+
163
+
164
+
165
+ <?php foreach ($List as $book) { ?>
166
+
167
+ <ul id="bookimg">
168
+
169
+ <li> <img src= "<?= $book->getBookimg()?>"> </li>
170
+
171
+ <li id="box2"><?= $book->getBoName() ?></li>
172
+
173
+ <li>¥<?= $book->getPrice() ?>+税</li>
174
+
175
+
176
+
177
+ </ul>
178
+
179
+ <?php
180
+
181
+ }
182
+
183
+ }
184
+
185
+ ?>
186
+
187
+ <br>
188
+
189
+ <?php for($i=1; $i <= $pagenation; $i++) :?>
190
+
191
+ <a href="?page=<?php echo $i ?>"><?php echo $i; ?></a>
192
+
193
+ <?php endfor; ?>
194
+
195
+ </tbody>
196
+
197
+ </section>
198
+
199
+ </body>
200
+
201
+ </html>
202
+
203
+
204
+
205
+
206
+
207
+ コード
208
+
209
+ ```