¿Cómo configuro los parámetros ORDER BY usando la declaración PDO preparada?
Tengo problemas para usar los parámetros en elORDER BY
sección de mi SQL. No emite ninguna advertencia, pero no imprime nada.
$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();
los:my_param
funciona, pero no:order
o:direction
. ¿No se está escapando internamente correctamente? ¿Estoy atascado al insertarlo directamente en el SQL? Al igual que:
$order = 'columnName';
$direction = 'ASC';
$stmt = $db->prepare("SELECT * from table WHERE column = :my_param ORDER BY $order $direction");
Hay unPDO::PARAM_COLUMN_NAME
constante o algún equivalente?
¡Gracias!