0

私は最も基本的なクエリを実行しています...

SELECT `id` FROM `members` WHERE `group` = 'admin';

上記のクエリを実行すると、が生成されError: Invalid parameter number: number of bound variables does not match number of tokensます。

変数がないため、プリペアドステートメントは必要ありません。したがって、インジェクションの可能性はありません。

これはPDOの性質であり、を含むクエリはバインドするWHERE 必要がありますか?

これが私の実際のクエリです:

$sql = "SELECT `id` FROM `members` WHERE `group` = 'admin';"
foreach ($conn->query($sql) as $row) { ... }
4

1 に答える 1

3

このエラーは、クエリにある疑問符の数とは異なる数の要素を含む配列を実行に渡すときに生成されます。ゼロパラメータも可能ですが、空の配列を渡す必要もあります。

于 2012-08-16T09:15:58.353 に答える