Карта сайта
 
 
 
 
 


Создание сайта с использованием MySql

  

Студия веб дизайна Киев.
Создание сайта с использованием MySQL.

Сначала ответим на вопрос - что такое MySQL? Это База Данных (БД), в которой структурировано хранятся данные. Следует второй вопрос - зачем отказываться от простых и удобных файлов к сложной БД? Потому что файлы, генерируемые каким либо скриптом на основе файловой БД (гостевые книги, CMS, форумы), постепенно начинают увеличиваться в размере, а так же их количество неуклонно растет. Поиск сильно затруднен. После преодоления некоторого порога (1000, 10000 файлов..) скрипт начинает жутко тормозить, и приходится подолгу ждать, когда он закончит свою работу. БД лишены этих недостатков - даже если в таблице будет миллион записей, поиск среди них будет идти доли секунды. Так уж они устроены, чтобы манипулировать огромным количеством данных. Но тут и возникает вопрос - а как работать с БД, в данном случае с MySQL? Эта статья как раз об этом.

Студия веб дизайна Киев. Подключение к серверу.

Серверу MySQL, чтобы подключиться к нему, нужно передать 4 параметра:

  • Хост. Это серовер, на котором расположен сервер MySQL. В абсолютном большинстве хост равен "localhost".
  • Имя пользователя. Имя пользователя, который может работать с этой таблицей. На локальных компьютерах по дефолту поставлен "root". На хостинге - в зависимости от вас.
  • Пароль. Пароль выбранного пользователя. По умолчания равен пустой строке - "".
  • Имя Базы данных. Имя БД, как вы ее назвали. По умолчанию - "test".


Подключаться к серверу нужно с помощи команды:

$msconnect=mysql_connect("Хост", "Пользователь", "Пароль");

Выбирать конкретную Базу данных:

mysql_select_db("Имя базы данных", $msconnect);

Закрыть подключение нужно командой:

mysql_close($msconnect);

И соответственно полный пример подключения, выбирание нужной таблицы и закрытие подключеиния:

<?
$mshost = "localhost"; // Хост
$msuser = "root"; // Имя пользователя
$mspassword = ""; // Пароль
$msname = "test"; // Имя базы данных

$msconnect = mysql_connect($mshost, $msuser, $mspassword);

mysql_select_db($msname, $msconnect);

mysql_close($msconnect);
?>



Студия веб дизайна Киев. Создание таблиц. Заполнение информацией БД

Вот мы подключились к серверу MySQL и выбрали БД. Что дальше? Дальше нужно создать новую таблицу. Управления БД в MySQL управляется с помощью специального языка запросов SQL. Поначалу он кажется страшным, непонятным и сложным, но через некоторое время при активной работе с БД вы сможете легко читать самые сложные с виду SQL-запросы (сам так же путался в начале..). Начнем.

Передача SQL запроса БД. Для этого существует единственная команда:

mysql_query("SQL-запрос", "подключенная БД");

Попробуем создать таблицу. Для этого передадим серверу такой SQL запрос:

mysql_query("CREATE TABLE имя_таблицы ( поле1 типполя1,
поле2 типполя2, поле3 типполя3)","подключенная БД");


Можно создавать сколько угодно полей. Заместо ТипПоля1 пишется:

  • INT - целые числа
  • TEXT - текстовая информация

Это 2 основных типа поля. На самом деле их очень много, но перечислять их - займет лишком много места. Итак, разобрались с созданием таблиц. Пример использования:

mysql_query("CREATE TABLE test_zero ( num INT, title TEXT,
text TEXT)",$msconnect);



Студия веб дизайна Киев. Добавление информации в БД

Для этого существует та же команда, только другой SQL-запрос:

mysql_query("INSERT INTO название_таблицы VALUES ('что засунуть в поле1',
'еще что то в поле2','и напоследок в поле3')", "подключенная БД");


Думаю, здесь никаких сложностей не возникнет. Единственное, значения поля с типом TEXT вводить в одинарных кавычках. И, как всегда, пример:

mysql_query("INSERT INTO test_zero VALUES (1, 'Заголовок статьи',
'Текст статьи')", $msconnect);



Студия веб дизайна Киев. Изменение информации в БД

Для этого используется такая команда:

mysql_query("UPDATE название_таблицы SET(поле1='значение1', поле2='значение2')
WHERE выражение", "подключенная БД");


Такой командой мы обновляем записи, указанные в скобках, а данной таблице, если они подходят по какому либо условию (WHERE ...). Это мы рассмотри чуть позже. Сейчас - пример:

mysql_query("UPDATE test_zero SET(num='2', title='Заголовок 2')
WHERE num=1", $msconnect);


Теперь полностью - подключение, создание таблицы, заполнение информации, ее обновление и закрытие подключения:

<?
$mshost = "localhost"; // Хост
$msuser = "root"; // Имя пользователя
$mspassword = ""; // Пароль
$msname = "test"; // Имя базы данных

$msconnect = mysql_connect($mshost, $msuser, $mspassword);

mysql_query("CREATE TABLE test_zero ( num INT, title TEXT,
text TEXT)",$msconnect); mysql_select_db($msname, $msconnect);

mysql_query("INSERT INTO test_zero VALUES (1, 'Заголовок статьи',
'Текст статьи')", $msconnect);

mysql_query("UPDATE test_zero SET(num='2', title='Заголовок 2')
WHERE num=1", $msconnect); mysql_close($msconnect);
?>


В итоге у нас появится новая таблица test_zero, в которой будет одна запись.

Студия веб дизайна Киев. Получение информации из БД.

Допустим, у нас большущая БД, в которой хранятся сотни записей. Как же эти записи получить? Очень просто:

$res=mysql_query("SELECT поле1, поле2, поле3 FROM имя_таблицы");
while($row=mysql_fetch_array($res))
{
$поле1=$row[поле1];
$поле2=$row[поле2];
$поле3=$row[поле3];
}


Командой SELECT мы получаем записи таблицы. Заместо строк "поле1, поле2, поле3" может стоять знак "*", который означает, что нужно читать все поля записей. Можно выбрать только одно поле, которое нужно. Это ускоряет работу БД. Что делает цикл while? Он означает, что пока в таблице есть записи, он будет помещать значения их полей в массив с помощью функции "mysql_fetch_array", а как только записи кончатся, цикл остановится. Чтобы получить из массива данные, можно воспользоваться способом, который я указал в примере. Внутри цикла можно генерировать, к примеру, статьи, вытаскивая данные из БД. Вот
пример:

$res=mysql_query("SELECT * FROM test_zero");
while($row=mysql_fetch_array($res))
{
$num=$row[num];
$title=$row[title];
$text=$row[text];

echo "($num) - $title <br><p align=justify>$text";
}



Студия веб дизайна Киев. Условия получения информации из БД

Когда в таблице сотни записей, получать все не всегда целесообразно. Для этого вводят какое либо условие:

$res=mysql_query("SELECT * FROM имя_таблицы WHERE поле1 знак 'значение'
ОПЕРАТОР поле2 знак 'значение'");


Рассмотрим поподробнее строку "поле1 знак 'значение'". Поле1 - название поля, например "title". Знак - логическое выражение, принимает значения:

  • = - равно
  • > - больше
  • < - меньше
  • != - не равно

Их так же достаточно много, это основные.

ОПЕРАТОР - логический оператор:

  • AND - логическое "и"
  • OR - логическое "или"

Это так же основные.

Пример вытаскивания из таблицы записей, номер которых больше 10:

$res=mysql_query("SELECT * FROM test_zero WHERE num > 10");


И, так сказать, итоговый пример применения БД:

<?
$mshost = "localhost"; //
Хост
$msuser = "root"; //
Имя пользователя
$mspassword = ""; //
Пароль
$msname = "test"; //
Имя базы данных

$msconnect = mysql_connect($mshost, $msuser, $mspassword);

mysql_query("CREATE TABLE test_zero ( num INT, title TEXT,
text TEXT)",$msconnect); mysql_select_db($msname, $msconnect);

mysql_query("INSERT INTO test_zero VALUES (1, '
Заголовок статьи',
'
Текст статьи')", $msconnect);

mysql_query("UPDATE test_zero SET(num='2', title='
Заголовок 2')
WHERE num=1", $msconnect); mysql_close($msconnect);

$res=mysql_query("SELECT * FROM test_zero");
while($row=mysql_fetch_array($res))
{
$num=$row[num];
$title=$row[title];
$text=$row[text];

echo "($num) - $title <br><p align=justify>$text";
}
?>


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

Если бы мне попалась эта статья пораньше - я бы не стал ее писать. Когда я еще не знал MySQL, я перерыл статей 10. Достаточно быстро научился создавать таблицы и заполнять их. А вывести не получалось. Пришлось практически методом тыка учится, специально для этого я и написал эту статью.

P.S: На оформление этой статьи ушло примерно в три раза больше времени, чем на ее написания. При оформлении я более 50 раз перезагружал статью. Вот так то :) .

Внимание!!! Данную статью можно перепечатывать только с указанием автора - Гиацинтов Андрей, а так же прямой ссылки на сайт автора - http://spryt.ru/. Перепечатка должна вестись в HTML коде, начиная от кода <!--Начало статьи--><style>.... и закачивая кодом </div></div><!--Конец статьи-->. Запрещено размещение данной статьи на форумах! Этот абзац так же должен быть указан!

 

Студия веб дизайна Киев. Обсудите статью на форумах

Если у вас есть какие-то вопросы, связанные с изложеным в статье материалом, Вы можете задать их на наших форумах.

Возможно, вам стоит заглянуть в раздел
«PHP, Perl и MySQL» — и Вам помогут полезным советом завсегдатаи наших форумов

Создание сайта в Киеве выполняет студия веб дизайна Clear Dedign Studio


НАШИ СТАТЬИ

Создание сайта (Киев), как средство эффективной рекламы. Советы маркетологов студии веб дизайна ClearDesign

Создание сайтов половина успеха Вашего бизнеса

Креативный дизайн сайтов

Создание интерактивных сайтов. Советы программистов студии веб дизайна ClearDesign (Киев)

Разработка сайта на PHP

НОВОСТИ

Началась работа по созданию интернет-магазина спортивных товаров.

Приступили к обновлению сайта art-gallery IMPRESS

Наша студия заканчивает один прект и еще работает над вторым проектом по Информационным Услугам в интернет-сети.

ЗНАЕТЕ ЛИ ВЫ ?

Как расположить теги DIV. Консультируют специалисты студии веб дизайна ClearDesign (Киев)


Студия веб дизайна Киев Clear Design предлагает:

Создание сайта

Создание flash (флеш) роликов

Изготовление сайта

Оптимизация, продвижение, раскрутка сайтов

Создание логотипов и баннеров

Мультимедийные презентации

Создание электронных магазинов

Курсы SEO

Курсы WEB

powerpoint презентации

презентация компании

Создание 3D моделей для сайтов

 
     
   

тел. (044) 277-42-05 (044) 277-40-42. Украина, 03056, Киев - 056, пер. Ковальський, 13, 1 эт. офис 2    studio@cleardesign.com.ua

   © “Clear Design” Studio