RTFM! статьи, советы, скрипты
::Заработок с помощью сайта ::JScript по-русски! ::Все русские мануалы::
МЕНЮ
О САЙТЕ
НОВОСТИ
СТАТЬИ
КНИГИ
АППЛЕТЫ
СВЯЗЬ

СЧЕТЧИКИ
Rambler's Top100
Рейтинг@Mail.ru
Яндекс цитирования

Работа с MySQL

Автор: Бардин Павел Сайт: http://proger.ru     Рейтинг: N/A из 7       <<НАЗАД
   
   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
   
   <?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
   
   <?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
   
   <?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.
   
   


<<НАЗАД      ОЦЕНИТЬ СТАТЬЮ    ВЕРСИЯ ДЛЯ ПЕЧАТИ>>
Статья прочитана :  раз.




пейкюлю



 
 
 
 
 
pauk ©® 2000-2015. All rights reserved.
При перепечатке ссылка на сайт и указание обязательны.
Мнение администрации сайта не всегда совпадает с мнением автора.
Орфография и пунктуация - авторские.
Администрация не несет никакой ответственности за использование материалов.
.
Protected by Copyscape DMCA Takedown Notice Infringement Search Tool