2012-02-14 1 views
0

私は、任意の数のユーザーを選択し、それらを基本検索機能からフィルタするために使用できる準備済みクエリを作成しようとしています。PHP PDOが最初の疑問符を拾っていないようです

それは次のようになります。

$ALL_MEMBERS = $database->prepare("SELECT * FROM Users WHERE Username LIKE '%?%' LIMIT ?, ?") 

しかし、PDOが最初のことを拾っていないようです「?」 '%'の間にある。どんな考え?

(私は3つのパラメータを与えるとき、それは2つのパラメータを与えていないときにはそれは、間違った量がありますと言って、私にエラーを与える)

+4

ユーザーがPHPマニュアルでノートを貢献:としてそれを書く:

$database->prepare("SELECT * FROM Users WHERE Username LIKE ? LIMIT ?, ?"); 

として、最初の変数を持っていますja/pdostatement.bindparam.php#99698)と言って –

+0

リンクありがとうございました –

答えて

4

あなたはおそらくPDOを引用とパーセンテージと混同していますか?マーク。 http://www.php.net/manual/持っている[この](

$database->execute(array('%'.$A.'%',$B,$C)); 
2

私はあなたがこれを行うために必要と考えている:

$ALL_MEMBERS = $database->prepare("SELECT * FROM Users WHERE Username LIKE ? LIMIT ?, ?") 

PDOはすでに文字列をラップしています。