2013-04-17 2 views
0

я в настоящее времяMySQL PDO-запрос с параметром CONTAINS?

$query = "SELECT * 
    FROM table 
    WHERE position = ? 
    AND (CONTAINS(first_name, ?) 
    OR CONTAINS(last_name, ?))"; 

$stmt = $db->prepare($query); 

$stmt->bindValue(1, $position, PDO::PARAM_STR); 
$stmt->bindValue(2, "%{".$q."}%", PDO::PARAM_STR); 
$stmt->bindValue(3, "%{".$q."}%", PDO::PARAM_STR); 

$stmt->execute()or die("error"); 

Сценарий продолжает умирать.

Любые идеи?

ответ

0

Использование LIKE:

SELECT * 
FROM table 
WHERE position = ? 
AND first_name LIKE ? 
OR last_name LIKE ? 
+0

Я попытался использовать оператор LIKE, но он не возвращал достаточно строк. Я предполагаю, что это слишком просто для запроса. Могу ли я использовать mysqli вместе с CONTAINS? – Lance

+0

CONTAINS не является функцией MySQL, используйте как – 2013-04-17 06:11:26

0

CONTAINS является синтаксис SQL-сервера, а не MySQL. use LIKE

+0

Я попытался использовать оператор LIKE, но он не возвращал достаточно строк. Я предполагаю, что это слишком просто для запроса. Могу ли я использовать mysqli вместе с CONTAINS? – Lance

+0

НЕТ, вы не можете ... CONTAINS - синтаксис SQL-сервера – Amir

Смежные вопросы