Як відбувається виведення даних бази даних PHP c допомогою SQL-запитів

29

Від автора: в деяких мовах програмування «приаттачивание» БД відбувається подібно ловлі риби: може клюнути, а може і ні. Добре, що цим не страждає що вивчається нами дисципліна. Але все одно, щоб не займатися рибальством», потрібно знати, як відбувається виведення даних бази даних PHP.

Зануримося в SQL

Щоб правильно відображати інформацію з будь-якої сучасної СУБД, потрібно бути добре знайомим з SQL-команди та їх синтаксис. З усіх систем керування нас, звичайно ж, цікавить MySQL.

Для вибірки даних використовується команда SELECT. Основи її застосування і написання краще всього розглядати на конкретних прикладах. Я також рекомендую скористатися допомогою однієї з програмних оболонок для адміністрування СУБД (Workbench, phpMyAdmin). Ви, швидше за все, використовуєте останню.

SELECT * from ім’я_таблиці;

Це найпопулярніший варіант застосування команди для вибірки. Таким чином ми вказуємо СУБД, що хочемо виділити (вибрати) всі рядки, які містяться в таблиці. Наприклад:

SELECT * FROM `country`;

Как происходит вывод данных базы данных PHP c помощью SQL-запросов

Таким запитом ми здійснюємо висновок із зазначеної бази даних MySQL PHP всієї інформації. Забув нагадати, що особливостями синтаксису має не тільки SQL, але і СУБД, засновані на ньому.

В MySQL однією з таких особливостей є екранування в запитах назв таблиць. Для цього використовуються не одинарні лапки, а тильда (на клавіатурі вона знаходиться зверху клавіші «Е»).

Щоб вивести значення певних стовпців, замість зірочки («*») слід перерахувати їх імена. Приклад запиту:

SELECT name, continent, region FROM `country`;

Как происходит вывод данных базы данных PHP c помощью SQL-запросов

Як видно на знімку, з допомогою цього запиту ми вивели значення зазначених стовпців. Зверніть увагу, що стовпці відображаються в тому порядку, в якому вони перераховані. Давайте поміняємо їх місцями і подивимося, що буде:

SELECT region,name,continent FROM `country`;

Как происходит вывод данных базы данных PHP c помощью SQL-запросов

Виходить, що з допомогою запитів ми може контролювати порядок виводу значень стовпців таблиці. Всі розглянуті вище приклади SELECT я викликав зсередини БД. При цьому запити були спрямовані не до сервера СУБД, а прямо до таблиць бази. Але частіше застосовується дещо інший синтаксис.

Якщо вийти з БД і здійснити в PHP висновок таблиці з бази даних, а безпосередньо через ядро MySQL, тоді ми отримаємо повідомлення, що жодна з БД не виділена. Доказ:

Как происходит вывод данных базы данных PHP c помощью SQL-запросов

Щоб не «нарватися» на ці «граблі», краще відразу прописувати ім’я бази і назву таблиці. Приклад реалізації:

SELECT region, name, continent FROM `world`.`country`;

Как происходит вывод данных базы данных PHP c помощью SQL-запросов

Відображаємо інформацію на екрані

Думаю, поки цього мінімуму знань SQL нам досить. Тепер займемося виведенням інформації з бази даних MySQL PHP. Я не буду зупинятися на розгляді того, як відбувається підключення до сервера СУБД. Цю тему ми проходили в одному з попередніх матеріалів.

Найчастіше для виводу даних з таблиці використовується цикл і функція mysqli_fetch_array(). Вона приймає в якості вхідного параметра змінну, в яку записується результат роботи mysqli_query(). Приклад:

«;
}
mysqli_close($str);
?>

Как происходит вывод данных базы данных PHP c помощью SQL-запросов

У цьому прикладі виведення сортованих даних з бази MySQL PHP функція mysqli_fetch_array() перетворює результати вибірки в асоціативний масив. В якості ключів використовуються імена стовпців, зазначені у запиті.

Зверніть увагу на функцію mysqli_close(), виклик якої відбувається в кінці скрипта. Вона закриває з’єднання з БД. В якості аргументу функція приймає ідентифікатор рядка підключення.

Как происходит вывод данных базы данных PHP c помощью SQL-запросов

СУБД може використовуватися не тільки для зберігання рядків, але і тексту. Наприклад, щоб реалізувати вивід новин з бази даних у PHP, варто лише трохи змінити код. А для стовпця таблиці, в якому буде зберігатися текстовий контент, задати тип даних текст.

Думаю, тепер не доведеться займатися «рибалкою». Ви зможете самостійно підключитися до будь-якої БД і вивести ті дані, які потрібні для роботи скрипта.