回答編集履歴
1
追記
test
CHANGED
@@ -48,6 +48,26 @@
|
|
48
48
|
今回のエラーは
|
49
49
|
`実行される SQL 文の中のバインドパラメータと同数の要素からなる、 値の配列。`のところを無視して引数を三つ与えていることが原因だと分かります。
|
50
50
|
|
51
|
+
また、サンプルコードもよく読んでみましょう。
|
52
|
+
今回のケースだと
|
53
|
+
|
54
|
+
例3 位置を指定した値を伴うプリペアドステートメントの実行
|
55
|
+
|
56
|
+
```PHP
|
57
|
+
<?php
|
58
|
+
/* 入力値の配列を伴うプリペアドステートメントの実行 */
|
59
|
+
$calories = 150;
|
60
|
+
$colour = 'red';
|
61
|
+
$sth = $dbh->prepare('SELECT name, colour, calories
|
62
|
+
FROM fruit
|
63
|
+
WHERE calories < ? AND colour = ?');
|
64
|
+
$sth->execute(array($calories, $colour));
|
65
|
+
?>
|
66
|
+
|
67
|
+
```
|
68
|
+
|
69
|
+
が参考になります。(ここでは配列の定義が古い記法で記述されていますが、`array($calories, $colour)`と`[$calories, $colour]`は同じ意味を持ちます)
|
70
|
+
|
51
71
|
お勧め
|
52
72
|
---
|
53
73
|
|