Домой Электроника Знакомство с MySQL: функции, настройка и подключение

Знакомство с MySQL: функции, настройка и подключение

Что включает в себя веб-сайт? Обязательно набор HTML-страниц с разметкой, текстом, заголовками; CSS-таблицы для красоты и стиля. Чтобы ресурс был интерактивным, дизайнеры создают javascript и php-скрипты. А также любому полноценному приложению нужны данные — списки пользователей, товаров, почтовые адреса клиентов. Конечно, их можно хранить в отдельных файлах. Но гораздо безопаснее и удобнее использовать базу данных. Самой популярной на сегодняшний день является MySQL. Давайте разберемся с основными функциями MySQL и научимся выполнять простые запросы к БД.

Настройка программного обеспечения

MySQL — это программа, которая выполняется на компьютере. Поэтому, чтобы было с чем работать, вы должны сначала скачать MySQL на свою рабочую машину. Если есть свой хост, то база данных уже установлена на веб-сервере. Эту услугу предоставляет каждый хостинг-провайдер, так что просто зайдите в phpMyAdmin.

Для загрузки и настройки MySQL на персональном компьютере скачайте и установите локальный сервер. Это может быть Denver, OpenServer или XAMPP (LAMPP для Linux). В этой статье все примеры созданы на XAMPP. Рабочая директория находится в C:/xampp/htdocs. Для удобства создайте отдельный каталог с названием сайта, в котором будет отдельно папка scripts для файлов php.

Создание первой базы данных

После установки XAMPP наберите в командной строке браузера localhost/dashboard/. Откроется приветственное письмо с панелью навигации вверху. Нажмите на phpMySQL и переходите по ссылке. Вы попадете в специальное веб-приложение, обеспечивающее доступ к MySQL. В левой колонке представлен список уже существующих баз и кнопка для создания новой. Нажимайте ее и вводите любое имя, пусть это будет myFirstDB. Справа от поля для имени находится выпадающий список для выбора кодировки, в котором нужно найти utf8_general_ci.

Функция MySQL хранить информацию и обеспечивать к ней доступ. Все данные находятся в форме таблиц, состоящих из строк и столбцов. Создать такую таблицу можно в командной строке или через интерфейс phpMySQL. Для этого выберите myFirstDB, нажмите кнопку вверху SQL и наберите следующее.

CREATE TABLE users(
user_id int AUTO_INCREMENT PRIMARY KEY,
username varchar(50),
email varchar(100)
);

Теперь у вас есть таблица, в которую пользователи могут вносить свое имя и почтовый адрес. Столбец user_id будет заполняться автоматически и увеличиваться на единицу в каждой новой строке. Доступ к информации вы можете получать из phpMySQL, но проще это делать непосредственно из php-сценариев с помощью функций Mysqli.

Подключение к базе данных из сценариев

В рабочем каталоге в папке scripts создайте документ config.php. Здесь у вас будут храниться конфигурационные настройки, php функции Mysqli для доступа к базе. Этот файл вы будете в дальнейшем подключать для работы MySQL из других сценариев.

Сначала вам нужно подключиться к базе данных, для этого вам понадобится имя хоста, пользователя, БД и пароль для входа.

<?php
DEFINE(«DATABASE_HOST», «localhost»);
DEFINE(«DATABASE_USER_NAME»,»root»);
DEFINE(«DATABASE_PASSWORD»,»»);
DEFINE(«DATABASE_NAME»,»myFirstDB»);
?>

С помощью функции Mysqli мы подключимся к заранее созданной myFirstDB.

//для объектно-ориентированного стиля
$mysqli = new mysqli(DATABASE_HOST, DATABASE_USER_NAME, DATABASE_PASSWORD, DATABASE_NAME) or die(«Can’t connect to MySQL: «.mysqli_connect_error());
//процедурного
$link = mysqli_connect(DATABASE_HOST, DATABASE_USER_NAME, DATABASE_PASSWORD, DATABASE_NAME)
or die(«Can’t connect to MySQL: «.mysqli_connect_error());

Занесение данных в таблицу

Чтобы каждый раз не вносить данные вручную, понадобится скрипт, который будет получать информацию из веб-формы и автоматически записывать ее в таблицу. Создайте простую форму с полями, соответствующим именам столбцов users.

<form action=»create_user.php» method=»POST» id=»signup_form»
<label for=»username»>Имя пользователя:</label>
<input type=»text» name=»username» size=»20″ class=»required» />
<label for=»email»>E-Mail Address:</label>
<input type=»email» name=»email» size=»50″ />
<input type=»submit» value=»Join» />
<input type=»reset» value=»Restart» />
</form>

Форма отправляет данные сценарию create_user.php.

<?php
require_once ‘scripts/config.php’;

//собираю информацию из формы
$username = htmlspecialchars(trim($_REQUEST[‘username’]));
$email = htmlspecialchars(trim($_REQUEST[’email’]));

//текст для запроса базе данных и взаимодействие с MySQL
$insert_sql = «INSERT INTO users(username, email) VALUES(?,?)»;
// подготовленный запрос
$stmt = $mysqli->prepare($insert_sql) or die(«Ошибка при создании подготовленного запроса»);
$stmt->bind_param(‘ss’, $username, $email) or die(«Ошибка при создании параметров подготовленного запроса»);
$stmt->execute() or die(«Ошибка при отправке подготовленного запроса»);
$stmt->close();
?>

В верхней строке сценарий запрашивает файл config.php с подключением к базе данных. С помощью переменных $username и $email собирает введенные пользователем строки и с помощью функций Mysqli заносит их в таблицу. Проверьте работоспособность сценария, а потом откройте phpMyAdmin и посмотрите, как изменилась ваша таблица users.