Используем базу MySQL
mysql - Система Управления Базами Данных (СУБД). Основное отличие от всех остальных СУБД это то, что она является бесплатной. В силу того, что mysql бесплатна, она поддерживается очень многими хостинг провайдерами.
Здесь я расскажу как связать php и mysql т.е. как получить данные из базы данных mysql в php скрипт.
Ну вообще-то это не так сложно. Всё, что нужно знать:
Хост - адрес сервера баз данных mysql
Имя базы данных
Имя пользователя
Пароль - пароль для доступа к БД
Некоторые sql команды
Далее я буду предполагать, что у вас уже заведена база данных на сервере хостера или на домашнем компьютере
(mysql можно скачать с сайта http://mysql.com).
Итак, алгоритм такой:
Устанавливаем соединение с сервером
Выбираем нужную базу данных
Делаем запрос к серверу баз данных (sql запрос)
Обрабатываем результат запроса, если это необходимо
Закрываем соединение (отключаемся от сервера БД)
По части php, чтобы работать с БД надо знать несколько функций (полный список смотри в php мануале).
mysql_connect();
mysql_select_db();
mysql_query();
mysql_fetch_array();
mysql_close();
Это тот минимум, который позволит вам устанавливать соединение с сервером mysql,
выбирать базы данных и делать запросы к серверу баз данных.
Для справки!
Все php функции которые предназначены для работы с базой данных mysql имеют префикс mysql_
Я не буду рассматривать синтаксис каждой функции. Надеюсь у вас есть php manual
(его можно скачать с сайта http://php.net). Рассмотрим эти функции в деле т.е. на примере.
Допустим в нашей базе данных храниться одна таблица со следующей структурой:
имя поля тип(длина) описание
id целый(2) уникальный номер
name символьный(100) имя
tel символьный(20) телефон
Таблица имеет имя: customer, а наша база данных называется database.
Допустим, что ваши данные для подключения к серверу mysql Такие:
Хост: localhost
Имя пользователя: guest
Пароль: mypassword
Для начала необходимо создать нашу таблицу customer. Напишем скрипт который создаст в базе данных database
таблицу customer. Назовём файлик как install.php.
Файл install.php
// Данные для mysql сервера
$dbhost = "localhost"; // Хост
$dbuser = "guest"; // Имя пользователя
$dbpassword = "mypassword"; // Пароль
$dbname = "database"; // Имя базы данных
// Подключаемся к mysql серверу
$link = mysql_connect($dbhost, $dbuser, $dbpassword);
// Выбираем нашу базу данных
mysql_select_db($dbname, $link);
// Создаём таблицу customer
// т.е. делаем sql запрос
$query = "create table customer (id int(2) primary key
auto_increment, name varchar(100), tel varchar(20))";
mysql_query($query, $link);
// Закрываем соединение
mysql_close($link)
?>
Функция mysql_connect() возвращает идентификатор соединения. Этот идентификатор необходимо указывать во всех mysql функциях. Можно провести аналогию с указателем на файл (file pointer), который используется функциями по работе с файлами. В параметрах функции мы указали хост, имя пользователя и пароль к базе данных.
На сервере mysql храниться не только ваша база данных. Сервер может обслуживать тысячи таких баз данных. Поэтому, чтобы получить доступ к своей базе данных, необходимо выбрать её. Выбор базы данных осуществляется функцией mysql_select_db(). В параметрах указывается: имя требуемой базы данных $dbname и идентификатор соединения $link, который мы получили с помощью функции mysql_connect().
После того как мы подключились к серверу mysql и выбрали нашу базу данных, мы делаем sql запрос. Литературу по языку sql вы найдёте на сайте mysql.ru. В запросе указываем, что мы хотим создать таблицу с именем customer и со структурой приведённой в таблице выше. Запрос к серверу mysql осуществляется с помощью функции mysql_query(). В параметрах указывается сам запрос $query и идентификатор соединения $link.
И, наконец, отключаемся от сервера (закрываем соединение) функцией mysql_close(). В параметрах указываем идентификатор того соединения, которое нужно закрыть.
Для справки!
На самом деле скрипт может устанавливать несколько соединений с сервером mysql.
Всё зависит от хостинга на котором вы сидите. Если вы всё сделали правильно, то на сервере mysql в вашей базе данных, появится таблица customer.
После того как мы создали таблицу, её надо заполнить т.е. записать в нёё какие-нибудь данные (записи). Напишем скрипт, который будет добавлять запись в нашу таблицу. Назовём файл скрипта как insert.php.
Файл insert.php
// Данные для mysql сервера
$dbhost = "localhost"; // Хост
$dbuser = "guest"; // Имя пользователя
$dbpassword = "mypassword"; // Пароль
$dbname = "database"; // Имя базы данных
// Подключаемся к mysql серверу
$link = mysql_connect($dbhost, $dbuser, $dbpassword);
// Выбираем нашу базу данных
mysql_select_db($dbname, $link);
// Добавляем запись в нашу таблицу customer
// т.е. делаем sql запрос
$query = "insert into customer values(0,'Иванов Иван Иванович',
'(095) 555-55-55')";
mysql_query($query, $link);
// Закрываем соединение
mysql_close($link);
?>
Посмотрев этот скрипт вы заметете, что он отличается от предыдущего только строкой запроса $query.
Теперь когда мы умеем записывать данные в базу данных, перейдём к процедуре запроса данных из базы mysql. Для этого напишем скрипт и назовём файлик select.php.
Файл select.php
// Данные для mysql сервера
$dbhost = "localhost"; // Хост
$dbuser = "guest"; // Имя пользователя
$dbpassword = "mypassword"; // Пароль
$dbname = "database"; // Имя базы данных
// Подключаемся к mysql серверу
$link = mysql_connect($dbhost, $dbuser, $dbpassword);
// Выбираем нашу базу данных
mysql_select_db($dbname, $link);
// Добавляем запись в нашу таблицу customer
// т.е. делаем sql запрос
$query = "select * from customer";
// Запрашиваем
$result = mysql_query($query, $link);
while($rows = mysql_fetch_array($result, mysql_assoc))
{
printf("id:%d, name:%s, tel:%s",
rows['id'],rows['name'],rows['tel']);
}
// Закрываем соединение
mysql_close($link);
?>
Ну тут... всё понятно :) :) :) Естественно изменилась строка запроса $query,
которая теперь содержит sql-оператор select. Так же добавился небольшой код while() { .... }. Скажу только, что функция mysql_fetch_array() обрабатывает результат запроса и возвращает массив полей текущей! Внимание! текущей строки результата.
Константа mysql_assoc указывает на то, что функция должна вернуть ассоциативный массив полей. После того как функция mysql_fetch_array() обработает все строки результата, она вернёт значение false и тогда цикл while() - не выполниться.
Тут в цикле используем функцию printf(). Она очень похожа на эту же функцию в языке c. Справку по функции printf() можете посмотреть в php мануале.
Надеюсь моя статья хоть немного помогла вам понять связь php и mysql.
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
- 2024-08-01 » WebSocket
- 2024-07-26 » Интеграция с Яндекс Еда
- 2024-07-26 » Интеграция с Эквайринг
- 2024-07-26 » Интеграция с СДЕК
- 2024-07-26 » Интеграция с Битрикс-24
- 2024-07-26 » Интеграция с Travelline
- 2024-07-26 » Интеграция с Iiko
- 2024-07-26 » Интеграция с Delivery Club
- 2024-07-26 » Интеграция с CRM
- 2024-07-26 » Интеграция с 1C-Бухгалтерия
- 2024-07-24 » Что такое сторителлинг: техники и примеры
- 2024-07-17 » Ошибка 404: что это такое и как ее использовать для бизнеса
- 2024-07-03 » Размещайте прайс-листы на FarPost.ru и продавайте товары быстро и выгодно
- 2024-07-01 » Профилирование кода в PHP
- 2024-06-28 » Изучаем ABC/XYZ-анализ: что это такое и какие решения с помощью него принимают
- 2024-06-17 » Зачем вам знать потребности клиента
- 2024-06-11 » Что нового в работе Яндекс Метрики: полный обзор обновления
- 2024-06-11 » Поведенческие факторы ранжирования в Яндексе
- 2024-06-11 » Скорость загрузки сайта: почему это важно и как влияет на ранжирование
Неудача — это не единичное внезапное событие. Ваш провал не возникает внезапно. Напротив, неудача появляется, когда вы совершаете одни и те же ошибки изо дня в день. Джим Рон |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.