Разработка Web- сайта “Элетронный магазин”

Автор работы: Пользователь скрыл имя, 07 Мая 2015 в 23:11, дипломная работа

Описание работы

Целью дипломной работы является проектирование и разработка Интернет-магазина
Во введении обоснована актуальность выбора темы, определены предмет, объект, цель и соответствующие ей задачи.
В первой главе был проведен обзор принципов построения информационных систем для торговли через интернет. Во второй главе описаны средства разработки Web приложения, в третьей проектирование и программная реализация компьютерной фирмы.

Содержание работы

Аннотация…………………………….……………………………………………………… 3
Введение………………………………………………………………………………………..4
Постановка задачи……………………………………………………………………………5
Глава 1. Информационные технологии в Web
1.1. Актуальность систем электронной коммерции………………………………….6
1.2. Основные этапы создания сайта…………………………….………………………6
1.3. Правила Web дизайна……………………………………………………………….7
1.4. Браузеры……………………………………………………………………………….9
1.5. Влияние дисплеев на Web-дизайн………………………………………………….. 11
1.6. Представление графики на Web-страницах………………………………..… 14
1.7. Создание фиксированных и гибких Web-страниц………………………….. 17
1.8. Язык гипертекстовой разметки HTML……………………………………….... 19
Глава 2. Средства разработки Web приложения
2.1.Язык программирование PHP……………………………………......…...................…25
2.2.Возможности и преимущества PHP……………………………..….....……………….35
2.3.PHP и MySql – совместная работа………………………………..….....………………40
2.4.Проектирование базы данных на СУБД MySql Server..………….....………………...41
Глава3. Практическая реализация
3.1.Организация сайта “Компьютерной фирмы”……………….…….....………………..53
3.2.Жизненный цикл проекта…………..……………………………….....…....................58
Глава 4. Безопасность жизнедеятельности
4.1. Воздействие на организм человека вредных веществ содержащихся в воздухе в рабочей зоне…………………………………………………………...................................61
4.2. Основные требования безопасности к промышленному оборудовании..................63
Заключение…………………………………………………………………………………….66
Литература …………………………………………………………………………………….67
Листинг программы.................................................................................................................68

Файлы: 1 файл

теория.doc

— 2.16 Мб (Скачать файл)

Способы задания первичного ключа

По способу задания первичных ключей различают логические (естественные) ключи и суррогатные (искусственные).

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

Если подходящих примеров для естественного задания первичного ключа не находится, пользуются суррогатным ключом. Суррогатный ключ представляет собой до-полнительное поле в базе данных, предназначенное для обеспечения записей первичным ключом.

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

Первичному ключу можно присвоить атрибут auto_increment, позволяющий автоматически генерировать уникальный ключ, если его тип является целочисленным. При вставке записи в базу данных значение ключа выставляется равным нулю, MySQL автоматически вычисляет максимальный номер первичного ключа, увеличивает его на единицу и присваивает это значение первичному ключу новой записи.

Нормализация базы данных

Определение:

Схемой базы данных называется структура связей между полями и таблицами.

Определение:

Нормализацией схемы базы данных называется процедура, производимая над базой данных с целью удаления в ней избыточности /19/.

Нормализация несет с собой немало преимуществ. Очевидно, что в нормализованной базе данных уменьшается вероятность возникновения ошибок, она занимает меньше места на жестком диске и т.д.

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

 

Таблица 3. Пример избыточности в таблицах базы данных

Профессия

Сотрудник

"Инженер"

Гусев И.К.

"Инженер"

Иванов П.В.

"Рабочий"

Иванов К.Л.

"Рабочий"

Дружков П.К.

"Рабочий"

Фомичев В.М.


Эта таблица избыточна - для каждого из сотрудников повторяются одинаковые названия профессий. Т.е. схема такой базы данных не нормализована. Для небольшой базы данных это не критично, но в больших по объёму базах данных это скажется на размере базы и, в конечном счёте, на скорости доступа. Для нормализации необходимо разбить эту таблицу на две - для профессий (см. табл. 4) и для фамилий сотрудников (см. табл. 5).

Таблица 4. Таблица профессий

Профессия

Первичный ключ

"Инженер"

1

"Рабочий"

2


 

 

Таблица 5. Таблица сотрудников

Профессия (внешний ключ)

Сотрудник

1

Гусев И.К.

1

Иванов П.В.

2

Иванов К.Л.

2

Дружков П.К.

2

Фомичев В.М.


Теперь каждый тип профессии обозначен уникальным числом, и строка в базе данных присутствует только в единственном экземпляре: в таблице профессий. Размер поля "профессия" уменьшился, так как строка занимает больше памяти, чем число.

Замечание

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

Работа с сервером MySQL

В этом разделе мы поговорим о том, как работать с клиентской программой mysql, с помощью которой можно подсоединяться к MySQL-серверу, выполнять SQL-запросы и просматривать результаты этих запросов. Текст этого раздела рассчитан на то, что на вашем компьютере уже установлена утилита mysql и существует связь с сервером MySQL.

При подключении к серверу MySQL с помощью программы mysql нужно ввести имя пользователя, и, как правило, пароль. Если сервер и клиент находятся на разных машинах, необходимо также указать имя хоста, на котором запущен сервер MySQL:

  shell> mysql -h host -u user -p

После этого на экране появится запрос Enter password:, и вам нужно будет ввести свой пароль. Если соединение прошло нормально, то на экране появляется следующая информация и метка командной строки mysql>:

  Welcome to the MySQL monitor. Commands end with ; or \g.

  Your MySQL connection id is 459 to server version:

  Type 'help' for help.

  mysql>

Появление метки mysql> означает, что программа mysql готова к работе.

Отсоединиться от сервера можно в любой момент, набрав команду QUIT:

  mysql> QUIT

  Bye

Кроме этого, разорвать соединение с сервером можно также, одновременно нажав клавиши +.

Замечание

Как правило, на только, что установленном MySQL на локальной машине доступ осуществляется без ввода пароля и хоста, вводом команды mysql в командной строке.

После того, как вы подсоединитесь к серверу, для того, чтобы освоиться с синтаксисом команд, можно выполнить несколько простых запросов. Поскольку пока еще никакой базы данных не выбрано, приводимые ниже запросы носят общий характер.

Ниже приведена простая команда, запрашивающая у сервера информацию об его версии и текущей дате:

  mysql> SELECT VERSION(), CURRENT_DATE;

Ответом MySQL на этот запрос будет следующая таблица:

  +--------------+--------------------+

  | version() | current_date |

  +--------------+--------------------+

  1 row in set (0.02 sec)

На примере выполнения этого запроса можно увидеть следующие основные особенности работы с MySQL:

  • Команда, посылаемая серверу, обычно состоит из SQL-выражения, за которым следует точка с запятой. Из этого правила есть несколько исключений, когда после команды точка с запятой не ставится, к примеру, уже упомянутая команда QUIT;
  • MySQL выводит результаты запроса в виде таблицы;
  • После вывода таблицы с результатами запроса, mysql сообщает количество возвращаемых строк и время выполнения запроса. Это удобно, поскольку позволяет оценить как производительность сервера, так и эффективность выполняемого запроса;
  • После вывода результатов запроса и времени его выполнения, mysql выводит новую строку mysql>, что означает готовность к выполнению новых команд.

Заметим, что команды MySQL не чувствительны к регистру, поэтому приведенные ниже запросы абсолютно идентичны:

  mysql> select version(), current_date;

  mysql> SELECT VERSION(), CURRENT_DATE;

  mysql> Select Version(), Сurrent_DATE;

MySQL позволяет на одной строчке  разместить несколько команд, но  каждая из них должна заканчиваться  точкой с запятой. К примеру:

  mysql> SELECT VERSION(); SELECT NOW();

На такой запрос мы получим следующий результат:

  +---------------+

  |  version() |

  +---------------+

  | 4.0.13-nt |

  +---------------+

  1 row in set (0.00 sec)

  +----------------------------------+

  | NOW()                        |

  +----------------------------------+

  | 2004-01-25 16:57:00 |

  +----------------------------------+

  1 row in set (0.03 sec)

Однако помещать все команды на одной строке совершенно необязательно:

  mysql> SELECT USER(),

      -> CURRENT_DATE;

И вот результат:

  +----------------------------+---------------------+

  | user()                    | current_date |

  +----------------------------+---------------------+

  | ODBC@localhost | 2004-01-25   |

  +----------------------------+---------------------+

  1 row in set (0.00 sec)

Заметьте, что после того, как мы перешли на новую строку, метка командной строки изменилась с mysql> на ->. Таким образом mysql показывает, что завершенного запроса не получено и она ожидает конца запроса. Эта метка весьма полезна, так как позволяет избежать некоторых ошибок. К примеру, если вы забудете поставить точку с запятой в конце запроса, mysql сообщит вам об этом, выведя метку ->:

  mysql> select user()

      ->

В завершение этого раздела, продемонстрируем, как можно использовать MySQL в качестве простого калькулятора, введя, к примеру, такой запрос:

  mysql> select cos(pi()/10), (2*5)-5;

Язык SQL

Структурированный язык запросов SQL позволяет производить различные операции с базами данных: создавать таблицы, помещать, обновлять и удалять из них данные, производить запросы из таблиц и т.д. Далее мы последовательно рассмотрим все эти операторы.

 

Замечание

Не смотря на то, что последний стандарт SQL принят в 1992 году, на сегодняшний день нет ни одной базы данных, где бы он полностью выполнялся. Более того, в различных базах данных часть операций осуществляется по-разному. Мы будем придерживаться диалекта SQL характерного для СУБД MySQL поэтому не все запросы могут выполняться для других баз данных.

Взаимодействие PHP и MySQL

В этом разделе приводятся описания наиболее часто используемых функций, позволяющих работать с MySQL средствами PHP.

SQL может  применятся в прикладных программах  двумя способами: в виде встроенного SQL и интерфейса программирования  приложений (Application Program Interface, API). Первый способ напоминает использование PHP - инструкции SQL размещаются среди кода прикладной программы. В настоящий момент такой стиль не поддерживает ни MySQL ни PHP. Второй подход заключается в том, что программа взаимодействует с СУБД посредством совокупности функций. Именно такой подход используется при взаимодействии PHP и MySQL.

mysql_connect

resource mysql_connect ([string server [, string username [, string password]]])

Эта функция устанавливает соединение с сервером server MySQL и возвращает дескриптор соединения с базой данных, по которому все другие функции, принимающие этот дескриптор в качестве аргумента, будут однозначно определять выбранную базу данных. Вторым и третьим аргументами этой функции являются имя пользователя username и его пароль password соответственно:

<?php

$dblocation = "localhost"; // Имя сервера

$dbuser = "root";          // Имя пользователя

$dbpasswd = "";            // Пароль

$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);

if (!$dbcnx) // Если дескриптор равен 0 соединение не установлено

{

  echo("<P>В настоящий момент сервер базы данных не доступен, поэтому

           корректное отображение страницы  невозможно.</P>");

  exit();

}

?>

Переменные $dblocation, $dbuser и $dbpasswd хранят имя сервера, имя пользователя и пароль, и, как правило, прописываются в отдельном файле (к примеру, config.php), который потом вставляется в каждый PHP-файл, в котором имеется код для работы с MySQL:

<?

$dblocation = "localhost";

$dbname = "forum";

$dbuser = "root";

$dbpasswd = "";

?>

mysql_close

bool mysql_close ([resource link_identifier])

Эта функция разрывает соединение с сервером MySQL, и возвращает true при успешном выполнении операции и false в противном случае. Функция принимает в качестве аргумента дескриптор соединения с базой данных, возвращаемый функцией mysql_connect.

К примеру:

// устанавливаем соединение  с базой данных 

$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);

if (!$dbcnx)

{

  // Выводим предупреждение

  echo ("<P>В настоящий момент сервер базы данных не доступен, поэтому

  корректное отображение  страницы невозможно.</P>");

  // Завершаем работу в случае неудачи

Информация о работе Разработка Web- сайта “Элетронный магазин”