Вообщем через PDO кидаю такой запрос:
$stmt = $pdo->prepare("SELECT * FROM `tasks` ORDER BY :order_db LIMIT :start_pos, :perpage");
$stmt->bindValue(':order_db', $order_db, PDO::PARAM_STR);
$stmt->bindValue(':start_pos', $start_pos, PDO::PARAM_INT);
$stmt->bindValue(':perpage', $perpage, PDO::PARAM_INT);
$stmt->execute();
$all_tasks = [];
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$all_tasks[] = $row;
}
return $all_tasks;
Он работает с этим всё норм, но почему-то когда в $order_db
передаешь другие данные по умолчанию туда ставится login ASC
, даже если туда уйдет login DESC
или email DESC
то при выводе все равно сортировка получается по логину. Хелп.
Разобрался посмотрел и решил сделать так как на мой взгляд лучше не делать, но зато работает ))
if ($order_col == 'logina' || $order_col == 'emaila' || $order_col == 'statusa') {
$stmt = $pdo->prepare("SELECT * FROM `tasks` ORDER BY " . $order_db . " ASC LIMIT :start_pos, :perpage");
} else {
$stmt = $pdo->prepare("SELECT * FROM `tasks` ORDER BY " . $order_db . " DESC LIMIT :start_pos, :perpage");
}
$stmt->bindValue(':start_pos', $start_pos, PDO::PARAM_INT);
$stmt->bindValue(':perpage', $perpage, PDO::PARAM_INT);
$stmt->execute();
$all_tasks = [];
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$all_tasks[] = $row;
}
return $all_tasks;
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть код, который нормально работаетНо когда я выставляю приоритет WHERE pollid =3; Диаграмма не отображается