質問編集履歴
2
コードを見やすくしました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -4,9 +4,7 @@
|
|
4
4
|
|
5
5
|
PHPでブログを作っています。
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
https://youtu.be/nUcNSZfiiWM
|
7
|
+
[【PHP/MySQL入門】](https://youtu.be/nUcNSZfiiWM)
|
10
8
|
|
11
9
|
こちらの動画をみて進めていったらindex.phpのところでエラーが出ました。
|
12
10
|
|
@@ -16,19 +14,17 @@
|
|
16
14
|
|
17
15
|
エラーメッセージ
|
18
16
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
```ここに言語
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
```**dbc.php**<?php
|
17
|
+
Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 in C:\MAMP\htdocs\dbc.php:35 Stack trace: #0 C:\MAMP\htdocs\dbc.php(35): PDO->query('SELECT * FROM ') #1 C:\MAMP\htdocs\index.php(5): Dbc->getAll() #2 {main} thrown in C:\MAMP\htdocs\dbc.php on line 35
|
18
|
+
|
19
|
+
```
|
20
|
+
|
21
|
+
**該当のコード**
|
22
|
+
|
23
|
+
dbc.php
|
24
|
+
|
25
|
+
```ここに言語を入力
|
26
|
+
|
27
|
+
<?php
|
32
28
|
|
33
29
|
|
34
30
|
|
@@ -110,13 +106,67 @@
|
|
110
106
|
|
111
107
|
|
112
108
|
|
113
|
-
|
109
|
+
// idから一つのデータを取ってくる
|
110
|
+
|
111
|
+
// 引数:$id
|
112
|
+
|
113
|
+
// 返り値:$result
|
114
|
+
|
115
|
+
public function getById($id) {
|
116
|
+
|
117
|
+
if(empty($id)) {
|
118
|
+
|
119
|
+
exit('IDが不正です。');
|
120
|
+
|
121
|
+
}
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
$dbh = $this->dbConnect();
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
// SQL準備
|
130
|
+
|
131
|
+
$stmt = $dbh->prepare("SELECT * FROM $this->table_name Where id = :id");
|
132
|
+
|
133
|
+
$stmt->bindValue(':id', (int)$id, PDO::PARAM_INT);
|
134
|
+
|
135
|
+
// SQL実行
|
136
|
+
|
137
|
+
$stmt->execute();
|
138
|
+
|
139
|
+
// 結果を取得
|
140
|
+
|
141
|
+
$result = $stmt->fetch(PDO::FETCH_ASSOC);
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
if(!$result) {
|
146
|
+
|
147
|
+
exit('ブログがありません。');
|
148
|
+
|
149
|
+
}
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
return $result;
|
154
|
+
|
155
|
+
}
|
156
|
+
|
157
|
+
|
114
158
|
|
115
159
|
}
|
116
160
|
|
117
161
|
?>
|
118
162
|
|
163
|
+
|
164
|
+
|
165
|
+
```
|
166
|
+
|
119
|
-
|
167
|
+
blog.php
|
168
|
+
|
169
|
+
```ここに言語を入力
|
120
170
|
|
121
171
|
<?php
|
122
172
|
|
@@ -210,7 +260,11 @@
|
|
210
260
|
|
211
261
|
?>
|
212
262
|
|
263
|
+
```
|
264
|
+
|
213
|
-
|
265
|
+
index.php
|
266
|
+
|
267
|
+
```ここに言語を入力
|
214
268
|
|
215
269
|
<?php
|
216
270
|
|
@@ -282,7 +336,7 @@
|
|
282
336
|
|
283
337
|
</html>
|
284
338
|
|
285
|
-
|
339
|
+
```
|
286
340
|
|
287
341
|
### 試したこと
|
288
342
|
|
1
index.php追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -210,7 +210,77 @@
|
|
210
210
|
|
211
211
|
?>
|
212
212
|
|
213
|
-
|
213
|
+
**index,php**
|
214
|
+
|
215
|
+
<?php
|
216
|
+
|
217
|
+
require_once('blog.php');
|
218
|
+
|
219
|
+
ini_set('display_errors', "On");
|
220
|
+
|
221
|
+
$blog = new Blog();
|
222
|
+
|
223
|
+
$blogData = $blog->getAll();
|
224
|
+
|
225
|
+
|
226
|
+
|
227
|
+
?>
|
228
|
+
|
229
|
+
|
230
|
+
|
231
|
+
<!DOCTYPE html>
|
232
|
+
|
233
|
+
<html lang="en">
|
234
|
+
|
235
|
+
<head>
|
236
|
+
|
237
|
+
<meta charset="UTF-8">
|
238
|
+
|
239
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
240
|
+
|
241
|
+
<title>ブログ一覧</title>
|
242
|
+
|
243
|
+
</head>
|
244
|
+
|
245
|
+
<body>
|
246
|
+
|
247
|
+
<h2>ブログ一覧</h2>
|
248
|
+
|
249
|
+
<p><a href="/form.html">新規作成</a></p>
|
250
|
+
|
251
|
+
<table>
|
252
|
+
|
253
|
+
<tr>
|
254
|
+
|
255
|
+
<th>No</th>
|
256
|
+
|
257
|
+
<th>タイトル</th>
|
258
|
+
|
259
|
+
<th>カテゴリ</th>
|
260
|
+
|
261
|
+
</tr>
|
262
|
+
|
263
|
+
<?php foreach($blogData as $column): ?>
|
264
|
+
|
265
|
+
<tr>
|
266
|
+
|
267
|
+
<td><?php echo $column['id']?></td>
|
268
|
+
|
269
|
+
<td><?php echo $column['title']?></td>
|
270
|
+
|
271
|
+
<td><?php echo $blog->setCategoryName($column['category']) ?></td>
|
272
|
+
|
273
|
+
<td><a href="/detail.php?id=<?php echo $column['id'] ?>">詳細</a></td>
|
274
|
+
|
275
|
+
</tr>
|
276
|
+
|
277
|
+
<?php endforeach; ?>
|
278
|
+
|
279
|
+
</table>
|
280
|
+
|
281
|
+
</body>
|
282
|
+
|
283
|
+
</html>
|
214
284
|
|
215
285
|
|
216
286
|
|