Как сделать сортировку записей с БД?

У меня на странице выводятся все записи с БД phpMyAdmin.

<?php foreach ($posts as $post) : ?>
     <div class="portfolio_project wow fadeInUp" data-wow-duration="1s">
          <a href="/project?post_id=<?= $post['id'] ?>">
               <h5><?php echo $post['tags'] ?></h5>
          </a>
     </div>
<?php endforeach; ?>


Они в данном случае никак не сортируются, только по id.

function get_post_two()
{

    global $link;

    $sql = "SELECT * FROM projects ORDER BY id desc";

    $result = mysqli_query($link, $sql);

    $posts = array();
    while ($row = $result->fetch_assoc()) {
        $posts[] = $row;
    }

    return $posts;
}


В таблице записи есть строка tags где находятся несколько значений, например" Branding, 3D"

На сайте есть dropdown, где находятся несколько категорий (ссылок).

<div class="dropdown_category">
<button class="wow fadeInUp hvr-fade">Wszystkie kategorie</button>
     <div>
          <a href="#">Wszystkie kategorie</a>
          <a href="#">UI/UX Design</a>
          <a href="#">Branding</a>
          <a href="#">3D</a>
     </div>
</div>


При нажиме на какую-то конкретную категорию, я хочу чтобы на странице без перезагрузки отображались именно те записи которые имеют в строке" tags" конкретное значение. Например - я нажимаю на кнопку Branding и чтобы на странице показывались только записи в которых в строке" tags" есть слово" Branding"

Как это правильно сделать?
  • Вопрос задан
  • 51 просмотр
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
1. Это не сортировка, а поиск. SELECT ... WHERE ...
2. Таблицу надо переделывать, приводя к нормальной форме. Не должно быть в колонках списков значений, они выделяются в отдельные связанные таблицы.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы