2016-03-23 18 views
1

yakalanmamış PDOException: sqlstate [HY093]: geçersiz parametre sayısı: I PDO terimi altında yürütmek için çalışırken bağlı değişken sayısı belirteçleri Sphinx PDO birden çok değişken hatayı çalıştırmak

sayısı eşleşmeyen Birden fazla değişken ile yukarıdaki hatayı alıyorum.

$array = $sphinx->prepare("select * from `indexname` where MATCH ('@name (:search)') AND 
`price` BETWEEN :min AND :max"); 
$array->execute(array(':search' => $search, ':min' => $min, ':max' => $max)); 

Sadece :search kullanmak ve sorgu çalışır $min and $max için :min and :max değiştirirseniz.

$array = $sphinx->prepare("select * from `indexname` where MATCH ('@name (:search)') AND `price` BETWEEN $min AND $max"); 
$array->execute(array(':search' => $search)); 

Sfenks ile birlikte yalnızca 1 değişken kullanabilir miyim?

cevap

1

Bir yer tutucuda, a complete data literal only bağlayabilirsiniz.

$stmt = $sphinx->prepare("select * from `indexname` where MATCH (:search) AND 
`price` BETWEEN :min AND :max"); 
$stmt->bindValue(':search', "@name ($search)"); 
$stmt->bindValue(':min', (int)$min, PDO::PARAM_INT); 
$stmt->bindValue(':max', (int)$max, PDO::PARAM_INT); 
$stmt->execute(); 
+0

soruya geçerli kodu ekleyin:

nedenle sorguya göndermek sonra ilk PHP, arama deseni derlemek ve zorundayız. –

+0

farklı hata - 1064 sphinxql: sözdizimi hatası, beklenmedik QUOTED_STRING, '' 0 'VE' 1000 'yakınında CONST_INT (veya 3 başka belirteç) bekliyoruz .... – user3312792

+0

PDO ile başka bir sorun, güncellenmiş kod bakın –

İlgili konular