質問編集履歴
1
コードの追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,21 +8,85 @@
|
|
8
8
|
|
9
9
|
|
10
10
|
|
11
|
+
<?php
|
12
|
+
|
13
|
+
//デバッグ(開発)時は必ず記述する
|
14
|
+
|
15
|
+
ini_set('display_errors', true);
|
16
|
+
|
17
|
+
error_reporting(E_ALL);
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
date_default_timezone_set('Asia/Tokyo');
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
$db_host='';
|
26
|
+
|
27
|
+
$db_name='';
|
28
|
+
|
29
|
+
$db_user='';
|
30
|
+
|
31
|
+
$db_pass='';
|
32
|
+
|
33
|
+
$db_table='';
|
11
34
|
|
12
35
|
|
13
36
|
|
14
37
|
|
38
|
+
|
15
|
-
|
39
|
+
//データベースへ接続する
|
40
|
+
|
41
|
+
try {
|
16
42
|
|
17
43
|
|
18
44
|
|
19
|
-
|
45
|
+
$pdo = new PDO("mysql:dbname=$db_name;host=$db_host;charset=utf8", $db_user, $db_pass, [
|
20
46
|
|
21
|
-
|
47
|
+
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
|
22
48
|
|
23
|
-
|
49
|
+
]);
|
24
50
|
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
} catch (PDOException $e) {
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
header('Content-Type: text/plain; charset=UTF-8', true, 500);
|
60
|
+
|
61
|
+
exit($e->getMessge());
|
62
|
+
|
63
|
+
}
|
64
|
+
|
65
|
+
|
66
|
+
|
25
|
-
|
67
|
+
function h($str)
|
68
|
+
|
69
|
+
{
|
70
|
+
|
71
|
+
return htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
|
72
|
+
|
73
|
+
}
|
74
|
+
|
75
|
+
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
$query = "SELECT .... FROM sample WHERE name=:name ORDER BY id DESC LIMIT ".($_GET['page']*10).", 10";;
|
80
|
+
|
81
|
+
|
82
|
+
|
83
|
+
$stmt = $pdo->query($query);
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
$rows = $stmt->fetchAll();
|
88
|
+
|
89
|
+
|
26
90
|
|
27
91
|
$name = filter_input(INPUT_GET, 'name');
|
28
92
|
|
@@ -36,7 +100,37 @@
|
|
36
100
|
|
37
101
|
|
38
102
|
|
103
|
+
?>
|
104
|
+
|
105
|
+
|
106
|
+
|
107
|
+
|
108
|
+
|
109
|
+
|
110
|
+
|
111
|
+
```
|
112
|
+
|
113
|
+
↓以下に修正したのですがエラーが出てしまいます。
|
114
|
+
|
115
|
+
エラー内容: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 ':name ORDER BY id DESC LIMIT 10, 10' at line 1' in
|
116
|
+
|
117
|
+
```ここに言語を入力
|
118
|
+
|
119
|
+
|
120
|
+
|
39
121
|
"SELECT .... FROM sample WHERE name=:name ORDER BY id DESC LIMIT ".($_GET['page']*10).", 10";
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
$name = filter_input(INPUT_GET, 'name');
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
$arr = [];
|
130
|
+
|
131
|
+
|
132
|
+
|
133
|
+
$arr[':name'] = $name;
|
40
134
|
|
41
135
|
|
42
136
|
|