Написал такой запрос
<?php
$result = db_query("
SELECT DISTINCT node.title AS node_title, node.nid AS nid, url_alias.alias AS path, term_data.name AS term_name
FROM {node} node
LEFT JOIN url_alias ON CONCAT( 'node/', node.nid) = url_alias.source
LEFT JOIN field_data_field_catalog AS field_catalog ON node.nid = field_catalog.entity_id
LEFT JOIN taxonomy_term_data AS term_data ON field_catalog.field_catalog_tid = term_data.tid
".$category_query."
WHERE ((
(node.status = '1') AND
(node.type IN ('product_display'))
AND (node.title LIKE ".$title."%)
))
ORDER BY node.title DESC"
)->fetchAll();
?>
Вставляю переменную title напрямую в запрос.
Все работает но если в заголовке встречаются кавычки, то возникает синтаксическая ошибка.
пробовал делать отдельный массив с параметрами, но так и не получил нужно результата.
Комментарии
<?php
$query = db_select('node');
$query->join('url_alias', 'url_alias', "CONCAT('node/', node.nid) = url_alias.source");
.....
$query->condition('node.status', 1);
$query->condition('node.type', ['product_display']);
$query->condition('node.title', '%' . db_like($title) . '%', 'LIKE');
$query->orderBy('node.title', 'desc');
$queryResult = $query->execute();
$result = $queryResult->fetchAll();
?>
db_query устарел уже в д7, насколько я помню. Не используйте его. Он много чего не поддерживает.
Так в search загляни - там всё про это.