У меня возникают проблемы с использованием параметров в разделе ORDER BY
моего SQL. Он не выдает никаких предупреждений, но ничего не выводит.
$order = 'columnName';
$direction = 'ASC';
$stmt = $db->prepare("SELECT field from table WHERE column = :my_param ORDER BY :order :direction");
$stmt->bindParam(':my_param', $is_live, PDO::PARAM_STR);
$stmt->bindParam(':order', $order, PDO::PARAM_STR);
$stmt->bindParam(':direction', $direction, PDO::PARAM_STR);
$stmt->execute();
Работает :my_param
, но не :order
или :direction
. Является ли это внутренним бегством? Могу ли я вставить его непосредственно в SQL? Например:
$order = 'columnName';
$direction = 'ASC';
$stmt = $db->prepare("SELECT * from table WHERE column = :my_param ORDER BY $order $direction");
Существует ли константа PDO::PARAM_COLUMN_NAME
или какой-либо эквивалент?
Спасибо!