Информационная система сети магазинов компьютерного оборудования

 














КУРСОВОЙ ПРОЕКТ

Информационная система сети магазинов компьютерного оборудования



1. Анализ принципов построения электронных магазинов и каталогов


Онлайновый «прилавок» привязан к системе автоматизации предприятия. Содержимое представляется в виде иерархической древовидной структуры, базовыми элементами которой являются группы.


2. Технологии и средства разработки

программирование управление приложение файловый

Существует множество совершенно различных способов создания Интернет-страниц, однако все они делятся по степени автоматизации на два основных типа: визуальный и программируемый.(HyperText Markup Language) является стандартным языком, предназначенным для создания гипертекстовых документов в Интернет среде. Суть языка HTML - в разметке текста с помощью управляющих символов - тегов, которые располагаются в угловых скобках.
Html-документы могут просматриваться различными типами браузеров. Когда документ создан с использованием html, веб-браузер может интерпретировать html для выделения различных элементов документа и первичной их обработки. Использование html позволяет форматировать документы для их представления с использованием шрифтов, линий и других графических элементов на любой системе, их просматривающей.(Dynamic HTML) - это набор средств для создания интерактивного веб-сайта, использующий сочетание статичного языка разметки HTML, встраиваемого (и выполняемого на стороне клиента) скриптового языка JavaScript, CSS (каскадных таблиц стилей) и DOM (объектной модели документа). DHTML используется для создания web-сайтов, которые максимально автономны и интерактивны.
Создание сайтов на языке html относится к программируемым способам, также иногда называют ручным.
Также к программируемым способам относится написание сайтов на языках веб-программирования и Фреймворках: ASP.NET, Java, PHP, Perl, Ruby и т.д., но в основе любого кода сайта лежит язык гипертекстовой разметки Html. Его должны знать все разработчики.
Серверные языки программирования

Серверные языки веб-программирования могут быть условно разделены по операционной системе, на которой они работают: Windows и *nix. Это разделение в некоторой степени условно, т.к. практически все популярные языки и Фреймворки портированы на обе ОС. Тем не менее, они редко используются на неродных ОС.

Если говорить про ОС Windows, то тут безраздельно властвует технология ASP.NET, разработанная компанией Microsoft. С помощью ASP.NET можно создавать сайты любого уровня сложности - от самых простых, состоящих их нескольких страниц, до очень сложных, обрабатывающих миллионы запросов в день (сайты Microsoft, написанные на ASP.NET, являются одними из самых посещаемых в Интернет).

Технология ASP.NET привлекательна для тех, кто неплохо разбирается в ОС Windows, но незнаком с Unix-подобными системами. Основной недостаток - меньшее, по сравнению с *nix, количество дешёвых хостингов или необходимость покупки серверной лицензии, в случае с выделенным хостингом. Однако, по сравнению со стоимостью разработки сложных сайтов, а, также, стоимостью трафика, разница расходов на Windows и *nix хостинг может быть пренебрежимо мала.

Самым популярным языком веб-программирования является, безусловно, PHP. Его основными преимуществами являются: простой синтаксис, высокое быстродействие, поддержка большинством хостингов. Очень весомым преимуществом является то, что на PHP написаны многие популярные CMS (Content Management System) (например, самая популярная CMS для stand alone блогов - WordPress).

Другой популярный язык веб-программирования на платформе Unix - язык Perl. Он имеет сложный запутанный синтаксис и никогда не предназначался для веб-программирования.
JSP (Java Server Pages) - это часть технологии J2EE, предназначенная для создания сайтов с помощью языка Java. JSP имеет очень много общего с ASP.NET и выбор между этими двумя технологиями чаще всего основывается на субъективных предпочтениях, а не на каких-либо преимуществах или недостатках этих платформ.
В последнее время высокую популярность приобрёл язык Ruby и, в частности, Фреймворк Ruby on Rails. С его помощью можно очень быстро создать сайт с требуемой функциональностью. Одним из существенных недостатков Ruby является низкое быстродействие.

К отдельной категории можно отнести создание сайта средствами CMS, что в переводе на русский означает «система управления содержимым», в данном случае содержимым сайта. CMS - это очень широкое понятие, которое включает как очень простые (состоящие из нескольких скриптов), так и весьма сложные универсальные системы, предназначенные для решения самых разнообразных задач при создании сайтов. CMS - это настраиваемая система, предназначенная для простого и эффективного управления содержимым сайта.возникли из стандартизации основных элементов сайтов: структура, рубрикация, метод подачи материалов, на основе которой и были разработаны первые системы для построения и сопровождения сайтов. Системы CMS стали очень популярны, когда при разработке стала применяться модульная структура, при которой CMS модифицируется под те или иные направления сайтов. Эти системы приобрели популярность в силу того, что за небольшие деньги клиентам предлагалась достаточно мощная функциональность.

Современная система управления контентом представляет собой конструктор, с помощью которого можно создавать и сопровождать свой сайт (обновлять и добавлять материалы, заводить новые рубрики).
Любая CMS исходит из принципа, что большинство сайтов очень похожи по структуре и рубрикам, но отличаются наполнением и дизайном. Поэтому в каждую CMS входят определённые пункты, которые можно включить в сайт: новости, статьи, информация о фирме, контактные данные, прайс-лист и т.д., которыми можно управлять в разделе администрирования сайта.
Для разработки структуры и навигации сайта в CMS не требуются знания html, поскольку данные системы разработаны с учётом того, чтобы подобная разработка делалась визуально, и была доступна в т.ч. неопытному пользователю.

В любой CMS предусмотрены различные виды доступа. Администратор имеет доступ к любым разделам и может менять структуру сайта, и любой рубрики. Редактор может менять любой текст на сайте, но не может изменять структуру рубрик, добавлять их или удалять. Пользователь имеет доступ только к определённой рубрике (или конкретным материалам из неё), и может работать только с ней. Таким образом, CMS является многопользовательской системой, позволяющей давать соответствующий доступ к механизму сайта различным группам.

Системы управления базами данных

Системы управления базами данных (СУБД), составляющие основу систем баз данных, можно классифицировать по количеству пользователей, местоположению сайта БД, а также по ожидаемому способу и сфере использования. По количеству пользователей СУБД можно подразделить на однопользовательские и многопользовательские.

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

В противоположность этому многопользовательская СУБД может обслуживать нескольких пользователей одновременно. Если многопользовательская база данных обслуживает относительно небольшое число пользователей (менее 50) или, скажем, отдел предприятия, то она называется базой данных рабочей группы.

Если же база данных используется в рамках всего предприятия и обслуживает большое число (более 50, как правило, сотни) пользователей нескольких подразделений и отделов, то такая БД называется базой данных предприятия.

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

Библиотеки JavaScript

JavaScript изначально создавался для того, чтобы сделать web-странички «живыми».

Программы на этом языке называются скриптами. Они подключаются напрямую к HTML и, как только загружается страничка - тут же выполняются.

Библиотека JavaScript - это библиотека, содержащая элементы управления JavaScript, что позволяет упростить разработку приложений, основанных на JavaScript, особенно содержащих AJAX и другие технологии, ориентированные на использование в сети. JavaScript совместно с различными диалектами XML стал активно использоваться в разработке пользовательских интерфейсов как веб-приложений. JavaScript в связке с CSS используется для создания динамических сайтов.

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

В браузере JavaScript умеет делать все, что относится к манипуляции со страницей, взаимодействию с посетителем и, в какой-то мере, с сервером:

·Создавать новые HTML-теги, удалять существующие, менять стили элементов, прятать, показывать элементы и т.п.

·Реагировать на действия посетителя, обрабатывать клики мыши, перемещение курсора, нажатие на клавиатуру и т.п.

·Посылать запросы на сервер и загружать данные без перезагрузки страницы (эта технология называется «AJAX»).

·Получать и устанавливать cookie, запрашивать данные, выводить сообщения…

·…и многое, многое другое!

Среды разработки

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

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

Обзор сред разработки:

PHP Expert Editor - удобный редактор для PHP, Perl, Python, HTML, Java Script и других файлов с поддержкой UTF-8. Программа разработана специально для PHP мастеров и имеет встроенный отладчик PHP.Expert Editor имеет встроенный HTTP сервер и позволяет запускать PHP, Perl, Python, скрипты. Вы также можете использовать любой внешний HTTP сервер.

Проверка синтаксиса PHP, встроенный браузер, FTP клиент с поддержкой SFTP, Кодовый и файл эксплорер, поддержка проектов, настраиваемые шаблоны кода, настраиваемая подсветка кода, и многие другие функции значительно облегчают работу разработчика.

phpDesigner - мощная программа для создания, редактирования, отладки, анализа и публикации веб-страниц и приложений на языке PHP, которая подойдет как начинающим программистам, так и профессиональным разработчикам. Программа примечательна тем, что кроме PHP в ней реализована поддержка HTML, MySQL, XML, CSS, JavaScript, VBScript, JAVA, C, Python и Ruby.

Благодаря средствам для автоматической подсветки кода, phpDesigner также подойдет WAMP/LAMP- и AJAX-разработчикам. Кроме этого программа содержит емкие библиотеки, содержащие более 3000 функций, доступ к которым легко осуществляется в процессе программирования.

Zend Studio - это среда разработки, позволяющая вести написание и отладку PHP-приложений, выпущенная известной компанией Zend Technologies. Отличительной особенностью Zend Studio является возможность удаленной отладки и профайлинга. Отметим, что для удаленной отладки требуется установить Zend Studio Server, который представляет собой серверный модуль.

В состав Zend Studio в качестве опции входит пакет PHP вместе с обширным списком предварительно скомпилированных расширений. Если у вас уже установлена предварительно сконфигурированная версия PHP, продукт Zend Studio легко интегрируется с ней.

Также в пакет среды Zend входит Zend Optimizer, являющийся серверным модулем для запуска закодированных с помощью Zend Encoder и Zend SafeGuard Suite скриптов, а также немного их ускоряющий (до 40%).

Coda как однооконный текстовый редактор для веб-разработки, в котором можно непосредственно редактировать текст, работать с файлами прямо на удалённом сервере, закачивать их по фтп. Кроме того, в приложении присутствует поддержка svn, есть возможность скачивать электронные книги по тематике IT и ещё множество других полезных функций. С первого взгляда может показаться, что для простой программы слишком много всего.

Одна из важнейших деталей в подобном роде приложений и сред разработки, конечно же, подсветка синтаксиса. В нашем случае Coda предоставляет подсветку для текстов на ActionScript, ASP-HTML, CFML, CSS, ERB, HTML, Java, JavaScript, JSP-HTML, LassoScript-HTML, Objective-Об Perl, PHP-HTML, Python, Ruby, Smarty, SQL и XML.

Программное обеспечение веб сервера

Веб-сервер (web-server) - это сервер, отвечающий за прием и обработку запросов (HTTP-запросов) от клиентов к веб-сайту. В качестве клиентов обычно выступают различные веб-браузеры. В ответ веб-сервер выдает клиентам HTTP-ответы, в большинстве случаев, вместе с HTML-страницей, которая может содержать: всевозможные файлы, какие-то изображения, медиа-поток или любые другие данные.

Также веб-сервер выполняет исполнение скриптов, например, таких как CGI, JSP, ASP и PHP, которые отвечают за организацию запросов к сетевым службам, базам данных, доступу к файлам, пересылке электронной почты и другим приложениям электронной коммерции.

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

Клиент пользователя, которым преимущественно является веб-браузер, передает веб-серверу запросы на получение ресурсов, обозначенных URL-адресами. Ресурсы - это HTML-страницы, цифровой медиа контент, медиа-потоки, различные изображения, файлы данных, или любые другие данные, необходимые клиенту. В ответ веб-сервер передает клиенту запрошенные им данные. Этот обмен происходит с помощью протокола HTTP.(англ. HyperText Transfer Protocol - протокол передачи гипертекста) - это сетевой протокол прикладного уровня передачи данных. Основным принципом протокола HTTP является технология «клиент-сервер», обеспечивающая взаимодействие сети и пользователя.

Самые распространенные веб-серверы: Apache (компания Apache Software Foundation), IIS (компания Microsoft). Сейчас на рынке программного обеспечения для веб-серверов, существует огромный выбор продуктов, как коммерческих, так и бесплатных.

Одним из самых распространенных веб-серверов, является Apache от компании Apache Software Foundation. По ориентировочным подсчетам, он используется на 65% всех веб-серверов в мире. Одно из основных достоинств программного обеспечения Apache - это то, что он распространяется бесплатно. Разработчики регулярно устраняют найденные ошибки и предоставляют хорошую поддержку пользователей. Данный веб-сервер поддерживает большое количество модулей, утилит и дополнений. С самого начала Apache разрабатывался как программное обеспечение для администраторов и опытных пользователей, поэтому у него есть недостаток - это сложность настройки и обслуживания.

Далее по популярности идет веб-сервер IIS от компании Microsoft. По данным компании Netcraft веб-сервер IIS составляет 12,46% от общего числа веб-серверов. Этот продукт входит в состав серверного программного обеспечения семейства Windows NT. Его основные преимущества - это стабильность, высокая скорость работы, а также возможность подключать дополнительные модули. Компания Microsoft стремится к тому, чтобы любой пользователь смог пользоваться ее продуктами без помощи специалистов, если ему нужно решить стандартные задачи. Поэтому система IIS очень проста в установке, настройке и обслуживании. Веб-сервер поддерживает технологию.NET, набирающую, в последнее время, популярность в среде разработчиков и профессиональных пользователей. Эти достоинства выводят веб-сервер IIS на новый уровень и можно ожидать, что его использование возрастет.- свободный веб-сервер и почтовый прокси-сервер, разрабатываемый Игорем Сысоевым. Простой, быстрый и надежный сервер. Работает в Linux и других Unix-подобных операционных системах, а также в Windows. Пользуется популярностью на крупных веб-сайтах.- свободный веб-сервер. Разработчик Ян Кнешке. Быстрый и безопасный веб-сервер. Работает в Linux и других Unix-подобных операционных системах, а также в Windows

Постановка задачи на разработку

Задача курсового проекта создание Информационной Системы Интернет-магазина сети магазинов компьютерного оборудования.

Интернет - магазин должен:

) информировать клиентов о предлагаемом ассортименте компьютерных комплектующих (цена товара, производитель, технические характеристики и т.п.);

) осуществлять On-line заказы (регистрация, оформление бланка заказа);

) носить рекламный характер для привлечения новых клиентов.

Создание интернет - магазина - это наиболее простой и относительно не дорогой способ распространения рекламы.

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

. Находящаяся информация на сайте должна быть краткой и предоставлять полное описание о товаре.

. Информация должна быть распределена по разделам и сопровождена фотографиями и иллюстрациями для большей наглядности.

. Содержать процедуру регистрации, а также системы защиты от несанкционированного и неавторизированного доступа.

Интернет - магазин рассчитан на продажу определенного вида товара или услуг. Интернет - магазины очень просты и удобны в использовании.

Интернет - магазины привлекают огромное количество покупателей.

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


3. Формализация


Для проектирования Интернет - магазин необходимо провести формализацию и стандартизацию данных и задач, являющихся необходимыми для этапов разработки прототипа Интернет - магазина.

Как правило, разработка проектной реализации выполняется в несколько этапов:

·Предпроектные исследования;

·Разработка технического задания;

·Дизайн концепция «Интернет - магазина»;

·Программирование;

·Интеграция сайта с системой управления;

·Тестирование;

·Сдача.

Далее вышеперечисленные пункты рассматриваются более подробно.

Ознакомление с проектом, уточнение целей и задач. Изучение бизнеса клиента, определение и анализ целевой аудитории. Анализ конкурентов. Составление календарного плана работ. Формирование бюджета и рабочей группы;

Разработка и утверждение окончательного технического задания, включающего требования к дизайну и требования к технической части проекта. Разработка структуры сайта (карты сайта). Разработка и согласование дизайна;

Разработка основной графической концепции дизайна сайта на примере главной страницы. Адаптация элементов фирменного стиля клиента для сайта;

Под программирование подразумевается создание основной схемы взаимодействия и функционирования Интернет - магазина, а также разработка интерфейсов взаимодействия с пользователем;

Сейчас уже ни один современный сайт не обходится без системы управления, т.к. важна не только красивая внешняя оболочка этого сайта, но и возможность удобной работы с ним. Это особенно актуально для сайтов с разветвленной структурой и большим объемом данных. В этот этап входит: интеграция с системой управления, программирование, настройка сервера, обеспечение безопасности проекта. Контроль качества;

Тестирование работоспособности сайта на наличие ошибок, тестирование страниц на корректность работы в различных браузерах (Internet Explorer, Netscape, Opera,);

Организация работ по размещению проекта в сети интернет на домене клиента. Финальное тестирование проекта. Обучение персонала клиента работы с системой управления сайта.


4. Макет дизайна


·На главной странице сайта должна присутствовать форма для поиска.

·Контактный блок и корзина должны визуализироваться на каждой странице на видимом месте.

·Страница результатов поиска должна содержать удобно воспринимаемую таблицу с результатами поиска, возможностью добавления произвольного количества позиций в корзину.

·Страница корзины должна содержать список отложенных позиций, а также автоматически подсчитанные суммы.


5. Конфиденциальность данных


Пароли не должны храниться в открытом или зашифрованном виде в базе данных. Вместо этого должен храниться его хэш.


6. Страница ошибок


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


7. Профиль пользователя


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

Контактная информация должна содержать:

·Ф.И.О.

·Страна

·Город

·Адрес

·Телефон

Все поля обязательны для заполнения.


8. Корзина и оформление заказа


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

Оформление заказа должно содержать следующие поля информации о пользователе:

·Ф.И.О.

·Страна

·Город

·Адрес

·Телефон

·Комментарий

Все поля, кроме «комментарий» обязательны к заполнению.

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

Проектирование приложения


9. Проектирование структуры приложения


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

Высокоуровневая карта сайта изображена на рис. 1.


Рис. 1 Высокоуровневая карта сайта


На главной странице располагается форма поиска. После ввода информации пользователь перенаправляется к результатам поиска.

Навигационная карта процесса прохождения пользователя от посещения сайта до оформления заказа изображена на рис. 2.



Рис. 2. Навигационная карта процесса оформления заказа пользователем


10. Ядро


Ядро приложения отвечает за обработку всех запросов пользователя.

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


11. Модули


В зависимости от адреса URL, введенного пользователем, ядро после обработки передает управление одному из модулей. Названия модулей ядра и их назначение указаны в таблице 1.


Таблица 1. Модули ядра приложения

название модуляназначение404.phpОповещает пользователя о том, что страница на которую он зашел, не существует.Cart.phpВывод отложенных пользователем товаров, оформление заказаCat.phpВывод товаров по категориямfilter.phpФильтр продуктов по параметрамhits.phpПоказ акционных товаров (скидки, распродажи)search.phpПоискreg.phpРегистрация пользователяfunctions.phpНабор функций для авторизации пользователя, формирования каталога товаров, расчетов сумм и количества товара в корзине и т.д.

12. Проектирование схемы базы данных


Рассмотрим структурную модель базы данных.

Сначала определим две основные задачи проектируемой системы:

хранить информацию о товарах, сотрудников и пользователей.

добавлять информацию о товарах, сотрудников и пользователей.

Из задач проектируемой системы были обнаружены такие сущности как: «Товары», «Пользователи», «Группы пользователей», «Категория».

Основными являются сущности «Товары» и «Пользователи», которые используются для формирования списка закупленного программного обеспечения и списка пользователей соответственно.

Структурная модель базы данных в интернет-магазине» изображена на рисунке 3.


Рис. 3 Структурная модель базы данных


Листинг сценария спроектированной базы данных в приложении А.

Разработка структуры приложения

При разработке пользовательского инструментария использовались следующие технологии:

PHP-серверный язык веб-програмирования

MySQL-система управления базами данных

Apache2 - веб-сервер

JavaScript - скриптовый язык для программирования интерфейса пользователя и формирования alax запросов.

XHTML - язык разметки веб-страниц

CSS - технология описания внешнего вида документа, написанного языком разметки

В качестве среды разработки использовалась IDE NetBeans 8.0 и операционная система UBUNTU linux. Во время разработки использовался комплекс серверного программного обеспечения - LAMP (Linux, Apache, MySQL, PHP).


13. Файловая структура приложения


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

В директории WWW располагается файл ядра, конфигурационный файл Apache (.htaccess) и дериктори «ishop», в которой хранятся статические файлы.

Файл конфигурации

Конфигурационный файл описывает основные настройки и параметры приложения.

Листинг 1. Файл config.php


<? php

('ISHOP') or die ('Access denied');


// домен('PATH', /');


// модель('MODEL', 'model/model.php');


// контроллер('CONTROLLER', 'controller/controller.php');


// вид('VIEW', 'views/');


// папка с активным шаблоном('TEMPLATE', PATH.VIEW.'ishop/');


// папка с картинками контента('PRODUCTIMG', PATH.'userfiles/product_img/baseimg/');


// папка с картинками галереи('GALLERYIMG', PATH.'userfiles/product_img/');


// максимально допустимый вес загружаемых картинок - 1 Мб

define ('SIZE', 1048576);


// сервер БД('HOST', 'localhost');


// пользователь('USER', 'root');


// пароль('PASS', 'alex');


// БД

define ('DB', 'provod');


// название магазина - title

define ('TITLE', 'Магазин программных продуктов');


// email администратора('ADMIN_EMAIL', '[email protected]');


// количество товаров на страницу

define ('PERPAGE', 9);


// папка шаблонов административной части

define ('ADMIN_TEMPLATE', 'templates/');


mysql_connect (HOST, USER, PASS) or die ('No connect to Server');_select_db(DB) or die ('No connect to DB');_query («SET NAMES 'UTF8'») or die ('Cant set charset');


Ядро

Файл ядра index.php - отвечает за функционал приложения и реализует основную логику приложения.

Приложение построено с помощью блоков и файлов шаблонов.

Формирование окончательного вида сайта реализуется с помощью перенаправления запросов модулем Apache-mod_rewrite.

Конфигурация модуля происходит с помощью «.htaccess», лежащего в корневой директории сайта.

Листинг 2. Файл.htaccess

utf-8_flag magic_quotes_gpc Off404 /page404.html

On

#RewriteCond%{REQUEST_FILENAME}! - d

#RewriteCond%{REQUEST_FILENAME}! - f^page/(\d+)/?$ index.php? view=page&page_id=$1^(hits|new|sale)/?$ index.php? view=$1^category/(\d+)/?$ index.php? view=cat&category=$1^category/(\d+)/page=(\d+)?/?$ index.php? view=cat&category=$1&page=$2^category/(\d+)/order/([a-z]+)/page=(\d+)?/?$ index.php? view=cat&category=$1&order=$2&page=$3^news/(\d+)/?$ index.php? view=news&news_id=$1^archive/?$ index.php? view=archive^archive/page=(\d+)?/?$ index.php? view=archive&page=$1^informer/(\d+)/?$ index.php? view=informer&informer_id=$1^product/(\d+)/?$ index.php? view=product&goods_id=$1^addtocart/(\d+)/?$ index.php? view=addtocart&goods_id=$1^reg/?$ index.php? view=reg^cart/?$ index.php? view=cart^cart/qty=(\d+)/id=(\d+)/?$ index.php? view=cart&qty=$1&id=$2


Файлы ядра и модулей приложения приведены в листингах 3-5.


Листинг 3. Файл index.php


<? php


// запрет прямого обращения

define ('ISHOP', TRUE);


// подключение файла конфигурации

require_once 'config.php';


// подключение контроллера_once CONTROLLER;


Листинг 4 файл CONTROLLER


<? php

('ISHOP') or die ('Access denied');

_start();


// подключение модели_once MODEL;


// подключение библиотеки функций_once 'functions/functions.php';


// получение массива каталога

$cat = catalog();

// получение массива информеров

$informers = informer();


// получени массива страниц

$pages = pages();


// получение названия новостей

$news = get_title_news();


// регистрация($_POST['reg']) {();();

}


// авторизация($_POST['auth']) {();($_SESSION['auth'] ['user']) {

// если пользователь авторизовался

echo «<p>Добро пожаловать, {$_SESSION['auth'] ['user']}</p>»;

exit;

} else {

// если авторизация неудачна

echo $_SESSION['auth'] ['error'];

unset ($_SESSION['auth']);;

}

}

// выход пользователя($_GET['do'] == 'logout') {();();

}


// массив метаданных

$meta = array();


// получение динамичной части шаблона #content

$view = empty ($_GET['view'])? 'hits': $_GET['view'];

($view) {('hits'):

// лидеры продаж

$eyestoppers = eyestopper('hits');

$meta['title'] = TITLE;

$meta['description'] = TITLE;

$meta['keywords'] = TITLE.», продажа, Москва»;;

('new'):

// новинки

$eyestoppers = eyestopper('new');

$meta['title'] = «Новинки |».TITLE;

$meta['description'] = «Новинки |».TITLE;;

('sale'):

// распродажа

$eyestoppers = eyestopper('sale');

$meta['title'] = «Распродажа |».TITLE;

$meta['description'] = «Новинки |».TITLE;;

('page'):

// отдельная страница

$page_id = abs((int)$_GET ['page_id']);

$get_page = get_page ($page_id);

$meta['title'] = «{$get_page['title']} |».TITLE;

$meta['description'] = «{$get_page['description']} |».TITLE;;

('news'):

// отдельная новость

$news_id = abs((int)$_GET ['news_id']);

$news_text = get_news_text ($news_id);;


case('archive'):

// все новости (архив новостей)

// параметры для навигации

$perpage = 2; // кол-во товаров на страницу

if (isset($_GET['page'])) {

$page = (int)$_GET['page'];($page < 1) $page = 1;

} else {

$page = 1;

}

$count_rows = count_news(); // общее кол-во новостей

$pages_count = ceil ($count_rows / $perpage); // кол-во страниц(!$pages_count) $pages_count = 1; // минимум 1 страница ($page > $pages_count) $page = $pages_count; // если запрошенная страница больше максимума

$start_pos = ($page - 1) * $perpage; // начальная позиция для запроса


$all_news = get_all_news ($start_pos, $perpage);;

('informer'):

// текст информера

$informer_id = abs((int)$_GET ['informer_id']);

$text_informer = get_text_informer ($informer_id);;

('cat'):

// товары категории

$category = abs((int)$_GET['category']);


/* =====Сортировка===== */

// массив параметров сортировки

// ключи-то, что передаем GET-параметром

// значения-то, что показываем пользователю и часть SQL-запроса, который передаем в модель

$order_p = array (

'pricea' => array ('от дешевых к дорогим', 'price ASC'),

'priced' => array ('от дорогих к дешевым', 'price DESC'),

'datea' => array ('по дате добавления - к последним', 'date ASC'),

'dated' => array ('по дате добавления - с последних', 'date DESC'),

'namea' => array ('от А до Я', 'name ASC'),

'named' => array ('от Я до А', 'name DESC')

);

$order_get = clear ($_GET['order']); // получаем возможный параметр сортировки

if (array_key_exists ($order_get, $order_p)) {

$order = $order_p [$order_get] [0];

$order_db = $order_p [$order_get] [1];

} else {

// по умолчанию сортировка по первому элементу массива order_p

$order = $order_p['namea'] [0];

$order_db = $order_p['namea'] [1];

}

/* =====Сортировка===== */


// параметры для навигации

$perpage = 3; // кол-во товаров на страницу

if (isset($_GET['page'])) {

$page = (int)$_GET['page'];($page < 1) $page = 1;

} else {

$page = 1;

}

$count_rows = count_rows($category); // общее кол-во товаров

$pages_count = ceil ($count_rows / $perpage); // кол-во страниц(!$pages_count) $pages_count = 1; // минимум 1 страница ($page > $pages_count) $page = $pages_count; // если запрошенная страница больше максимума

$start_pos = ($page - 1) * $perpage; // начальная позиция для запроса


$brand_name = brand_name($category); // хлебные крохи

$products = products ($category, $order_db, $start_pos, $perpage); // получаем массив из модели

$meta['title'] = $brand_name[0] ['brand_name'];($brand_name[1]) $meta['title'].= «- {$brand_name[1] ['brand_name']}»;

$meta['title'].= «|».TITLE;

$meta['description'] = «{$brand_name[0] ['brand_name']}, {$brand_name[1] ['brand_name']}»;;


case('addtocart'):

// добавление в корзину

$goods_id = abs((int)$_GET ['goods_id']);($goods_id);


$_SESSION ['total_sum'] = total_sum ($_SESSION['cart']);


// кол-во товара в корзине + защита от ввода несуществующего ID товара

total_quantity();();;

('cart'):

/* корзина */

// получение способов доставки

$dostavka = get_dostavka();


// пересчет товаров в корзине

if (isset($_GET['id'], $_GET['qty'])) {

$goods_id = abs((int)$_GET['id']);

$qty = abs((int)$_GET['qty']);


$qty = $qty - $_SESSION['cart'] [$goods_id] ['qty'];($goods_id, $qty);


$_SESSION ['total_sum'] = total_sum ($_SESSION['cart']); // сумма заказа

_quantity(); // кол-во товара в корзине + защита от ввода несуществующего ID товара

redirect();

}

// удаление товара из корзины

if (isset($_GET['delete'])) {

$id = abs((int)$_GET['delete']);($id) {_from_cart($id);

}();

}

($_POST['order_x']) {_order();();

};

('reg'):

// регистрация;

case('search'):

// поиск

$result_search = search();


// параметры для навигации

$perpage = 9; // кол-во товаров на страницу

if (isset($_GET['page'])) {

$page = (int)$_GET['page'];($page < 1) $page = 1;

} else {

$page = 1;

}

$count_rows = count ($result_search); // общее кол-во товаров

$pages_count = ceil ($count_rows / $perpage); // кол-во страниц(!$pages_count) $pages_count = 1; // минимум 1 страница ($page > $pages_count) $page = $pages_count; // если запрошенная страница больше максимума

$start_pos = ($page - 1) * $perpage; // начальная позиция для запроса

$endpos = $start_pos + $perpage; // до какого товара будет вывод на странице

if ($endpos > $count_rows) $endpos = $count_rows;;


case('filter'):

// выбор по параметрам

$startprice = (int)$_GET['startprice'];

$endprice = (int)$_GET['endprice'];

$brand = array();

($_GET['brand']) {($_GET['brand'] as $value) {

$value = (int)$value;

$brand[$value] = $value;

}

}($brand) {

$category = implode (', ', $brand);

}

$products = filter ($category, $startprice, $endprice);;

('product'):

// отдельный товар

$goods_id = abs((int)$_GET ['goods_id']);($goods_id) {

$goods = get_goods ($goods_id);($goods) $brand_name = brand_name ($goods['goods_brandid']); // хлебные крошки

}

break;


default:

// если из адресной строки получено имя несуществующего вида

$view = 'hits';

$eyestoppers = eyestopper('hits');

}


// подключение вида_once $_SERVER ['DOCUMENT_ROOT'].'/views/ishop/index.php'; // #"justify"><! DOCTYPE html PUBLIC «- //W3C //DTD XHTML 1.0 Transitional //EN» «#"justify"><html xmlns= «#"justify"><head>

<meta http-equiv= «Content-Type» content= «text/html; charset=utf-8» />

<link rel= «stylesheet» type= «text/css» href=»/views/ishop/css/style.css» />

<! - [if lt IE 9]>

<script src= «#"justify"><! [endif]->

<script type= «text/javascript» src=»/views/ishop/js/functions.js»></script>

<script type= «text/javascript» src=»/views/ishop/js/jquery-1.7.2.min.js»></script>

<script type= «text/javascript» src=»/views/ishop/js/jquery-ui-1.8.22.custom.min.js»></script>

<script type= «text/javascript» src=»/views/ishop/js/jquery.cookie.js»></script>

<script type= «text/javascript»>var path = '/';</script>

<script type= «text/javascript» src=»/views/ishop/js/workscripts.js»></script>

<! - Fancybox ->

<script type= «text/javascript» src=»/fancybox/jquery.mousewheel-3.0.4.pack.js»></script>

<script type= «text/javascript» src=»/fancybox/jquery.fancybox-1.3.4.pack.js»></script>

<link rel= «stylesheet» type= «text/css» href=»/fancybox/jquery.fancybox-1.3.4.css» media= «screen» />

<! - Fancybox ->

<meta name= «description» content= «Магазин программных продуктов» />

<meta name= «keywords» content= «Магазин программных продуктов, продажа, Москва» />

<title>Магазин программных продуктов</title>

</head>


<body>

<ul>

<li><a href=»/">Главная</a></li>

<li><a href=»/page/1»>О магазине</a></li>

<li><a href=»/page/2»>Оплата и доставка</a></li>

<li><a href=»/page/4»>Контакты</a></li>

</ul>

<div>

<div>

<a href=»/"><img>

<div>

<p><strong>Телефон:</strong><br />

<span>+7 (497) 881-10-01</span></p>

<p><strong>Режим работы:</strong><br />

Будние дни: с 8:00 до 17:00<br />

Без выходных.</p>

</div>

<form method= «get» action=»/">

<ul>

<input type= «hidden» name= «view» value= «search» />

<li><input type= «text» name= «search» id= «quickquery» placeholder= «Что вы хотите купить?» /></li>

<script type= «text/javascript»>

// <! [CDATA [('quickquery');

// ]]>

</script>

<li><input>

</ul>

</form>

</div><div id= «contentwrapper»>

<div id= «content»>

<div>

<h1>Лидеры продаж</h1>


<div>

<h2><a href=»/product/3»>ESET Smart Security 6</a></h2>

<div>

<a href=»/product/3»><img src=»/userfiles/product_img/baseimg/3.jpg» alt=»» /></a>

</div> <! - .product-table-img ->

<p>Цена: <span>534.</span></p>

<a href=»/addtocart/3»><img>

</div>

<div>

<h2><a href=»/product/7»>Windows 7 Ultimate Russian DVD BOX</a></h2>

<div>

<a href=»/product/7»><img src=»/userfiles/product_img/baseimg/7.jpg» alt=»» /></a>

</div> <! - .product-table-img ->

<p>Цена: <span>3669.</span></p>

<a href=»/addtocart/7»><img>

</div>

<div>

<h2><a href=»/product/8»>Microsoft Office 365 Personal 32/64</a></h2>

<div>

<a href=»/product/8»><img src=»/userfiles/product_img/baseimg/8.jpg» alt=»» /></a>

</div> <! - .product-table-img ->

<p>Цена: <span>659.</span></p>

<a href=»/addtocart/8»><img>

</div>

<div>

<h2><a href=»/product/11»>FIFA 14</a></h2>

<div>

<a href=»/product/11»><img src=»/userfiles/product_img/baseimg/11.png» alt=»» /></a>

</div> <! - .product-table-img ->

<p>Цена: <span>369.</span></p>

<a href=»/addtocart/11»><img>

</div>


</div></div>

</div>


<div id= «left-bar»>

<div>

<h2>Каталог</h2>

<h3>

<h3>

<h3>

<! - Меню категорий ->

<h4> - Программные продукты</h4>

<ul>

<li><a href=»/category/23»>Антивирусы</a></li>

<li><a href=»/category/25»>Игры</a></li>

<li><a href=»/category/30»>комплектующие</a></li>

<li><a href=»/category/29»>мониторы</a></li>

<li><a href=»/category/31»>ноутбуки</a></li>

<li><a href=»/category/26»>Операционные системы</a></li>

<li><a href=»/category/27»>Офисные приложения</a></li>

</ul>

<! - Меню категорий ->

<div>

<h3>Новости</h3>

<p>

<span>2014-05-21</span>

<a href=»/news/6»>Windows 8.1 Update 1</a>

</p>

<a href=»/archive»>

</div> <! - .news ->

<! - Информеры ->

<! - Информеры ->

</div>

</div>

<div id= «right-bar»>

<div>

<div>

<h2>Авторизация</h2>

<div>

<form method= «post» action= "#»>

<label for= «login»>Логин: </label><br />

<input type= «text» name= «login» id= «login» /><br />

<label for= «pass»>Пароль: </label><br />

<input type= «password» name= «pass» id= «pass» /><br /><br />

<input type= «submit» name= «auth» id= «auth» value= «Войти» />

<p>

</form>

</div> <! - .authform ->

</div> <! - .enter ->

<div>

<h2>Корзина</h2>

<div>

<p>

Корзина пуста

</p>

</div>

</div> <! - .basket ->

<div>

<h2>Выбор по параметрам</h2>

<div>

<form method= «get» action=»/">

<input type= «hidden» name= «view» value= «filter» />

<p>Стоимость:</p>

от <input>

до <input>

руб.

<br /><br />

<p>Категории:</p>

<input type= «checkbox» name= «brand[]» value= «23» id= «23» />

<label for= «23»>Антивирусы</label> <br />

<input type= «checkbox» name= «brand[]» value= «25» id= «25» />

<label for= «25»>Игры</label> <br />

<input type= «checkbox» name= «brand[]» value= «30» id= «30» />

<label for= «30»>комплектующие</label> <br />

<input type= «checkbox» name= «brand[]» value= «29» id= «29» />

<label for= «29»>мониторы</label> <br />

<input type= «checkbox» name= «brand[]» value= «31» id= «31» />

<label for= «31»>ноутбуки</label> <br />

<input type= «checkbox» name= «brand[]» value= «26» id= «26» />

<label for= «26»>Операционные системы</label> <br />

<input type= «checkbox» name= «brand[]» value= «27» id= «27» />

<label for= «27»>Офисные приложения</label> <br />


<input>

</form>

</div>

</div>

</div>

</div><div>

<div>

<div>

<p>Сopyright © 2014</p>

</div>

<div>

<h2>Телефон:</h2>

<h2>+7 (497) 881-10-01</h2>

<h2>Режим работы:</h2>

<p>Будние дни: с 8:00 до 17:00<br />

Без выходных. </p>

</div>

<div>

<p>Меню:</p>

<ul>

<li><a href=»/">Главная</a></li>

<li><a href=»/page/1»>О магазине</a></li>

<li><a href=»/page/2»>Оплата и доставка</a></li>

<li><a href=»/page/4»>Контакты</a></li>

</ul>

</div>

</div></div>

</body>

</html>


14. Пользовательский интерфейс


Основной вид сайта

Сайт запускается по ссылке #"justify">Внешний вид сайта представлен на рисунках 4-6.


Рис. 4. Главная страница


Рис 5. Регистрация


Оформление заказа:



Введение приложения в эксплуатацию

Для правильной работы приложения требуется php версии 5.5, MySQL версии 5.5 и включенный модуль apache - mod_rewrite.


15. Подготовка приложения к работе


Для введения приложения в эксплуатацию понадобится несколько шагов:.Загрузить исходные данные на сервер.Загрузить в базу данных SQL-сценарий.Установить права на запись для директорий.Настроить конфигурационный файл на работу с новой базой данных

На этом этапе приложение готово к эксплуатации


16. Нагрузочное тестирование


Для тестирования приложения использовался браузер Mazila с установленными плагинами Firebug и YSlow.

В результате тестирования получили следующие данные:


Таблица 2. Результаты тестирования

пользователи5203550Задержка, с0,70,80,870,92

Заключение


Данный Курсовой проект заключался в разработке информационной системы в виде Интернет - магазина.

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

Интернет - магазин удовлетворяет всем требованиям пункта 1. Постановка задачи. Полностью работоспособен, не требует доработок, и готов к эксплуатации.


Список литературы


1)Методические указания на курсовой проект по дисциплине «Проектирование Информационных систем» А.В. Алешинцев -2010

2)Л., Томсон Л. Разработка Web-приложений с помощью PHP и MySQL

)Р. Никсон - Создаем динамические веб-сайты с помощью PHP, MySQL, javascript и CSS. 2-е издание - 2013

)Б. Маклафин - PHP и MySQL. Исчерпывающее руководство

)www.phpnet.ru - помощь в среде PHP.

)www.webmasterspp.ru - помощь вебмастеру.


Приложение А


Дамп базы SQL

- phpMyAdmin SQL Dump

- version 4.0.10deb1

#"justify">-

Хост: localhost

Время создания: Окт 01 2014 г., 14:40

Версия сервера: 5.5.38-0ubuntu0.14.04.1

Версия PHP: 5.5.9-1ubuntu4.4


SET SQL_MODE = «NO_AUTO_VALUE_ON_ZERO»;time_zone = «+00:00»;


/*! 40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;

/*! 40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;

/*! 40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;

/*! 40101 SET NAMES utf8 */;



База данных: `provod`



-

-

Структура таблицы `brands`


TABLE IF NOT EXISTS `brands` (

`brand_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,

`brand_name` varchar(255) NOT NULL,

`parent_id` tinyint(3) unsigned NOT NULL DEFAULT '0',KEY (`brand_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=32;



Дамп данных таблицы `brands`


INTO `brands` (`brand_id`, `brand_name`, `parent_id`) VALUES

(23, 'Антивирусы', 0),

(25, 'Игры', 0),

(26, 'Операционные системы', 0),

(27, 'Офисные приложения', 0),

(29, 'мониторы', 0),

(30, 'комплектующие', 0),

(31, 'ноутбуки', 0);


-



Структура таблицы `customers`

-TABLE IF NOT EXISTS `customers` (

`customer_id` int(10) unsigned NOT NULL AUTO_INCREMENT,

`name` varchar(255) NOT NULL,

`email` varchar(255) NOT NULL,

`phone` varchar(255) DEFAULT NULL,

`address` varchar(255) DEFAULT NULL,

`login` varchar(20) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,

`password` varchar(32) DEFAULT NULL,

`id_role` tinyint(3) unsigned NOT NULL DEFAULT '1',KEY (`customer_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=38;



Дамп данных таблицы `customers`


INTO `customers` (`customer_id`, `name`, `email`, `phone`, `address`, `login`, `password`, `id_role`) VALUES

(33, 'Огнищенко Виталий Валерийович', '[email protected]', NULL, NULL, 'ognish', 'c8b3915fd812039a06da096f0c79f69a', 1),

(32, 'аппвпв', 'teef@ggg', '8 937 999 99 99', 'fbgdbg', NULL, NULL, 1),

(12, 'Гость 1', '[email protected]', '111', 'Адрес гостя', NULL, NULL, 1),

(13, 'Гость 2', '[email protected]', '222', 'Адрес гостя 2', NULL, NULL, 1),

(15, 'Гость 3', '[email protected]', '333', 'Адрес гостя 3', NULL, NULL, 1),

(31, 'Иванов Сергей Александрович', '[email protected]', '8 937 999 99 99', 'г. Москва, пр. Мира, ул. Петра Великого д. 19, кв 51.', NULL, NULL, 1),

(21, 'д''Артаньян', '[email protected]', '\\555\\ 555-55-55', 'город', NULL, NULL, 1),

(22, 'Администратор', 'admin@ishop', '+111111111', 'москва', 'admin', '21232f297a57a5a743894a0e4a801fc3', 2),

(23, 'Клиент', 'client@com', '123-123', 'просто город', NULL, NULL, 1),

(30, 'Огнищенко Виталий Валерийович', '[email protected]', '8 937 999 99 99', 'fvvfvf', NULL, NULL, 1),

(26, 'Иванов Сергей Александрович', '[email protected]', '8 937 999 99 99', 'г. Москва, пр. Мира, ул. Петра Великого д. 19, кв 51.', NULL, NULL, 1),

(27, 'cxzcxzczc', 'dvccxvc@dfdfd', '6555', 'dfdf', NULL, NULL, 1),

(28, 'Иванов Сергей Александрович', '[email protected]', '8 937 999 99 99', 'г. Москва, пр. Мира, ул. Петра Великого д. 19, кв 51.', NULL, NULL, 1),

(29, 'Иванов Сергей Александрович', '[email protected]', '8 937 999 99 99', 'г. Москва, пр. Мира, ул. Петра Великого д. 19, кв 51.', NULL, NULL, 1),

(35, '; lk; lk;', '[email protected]', '354353', 'dffdfdv', NULL, NULL, 1),

(36, 'Огнищенко Виталий Валерийович', '[email protected]', '098 881 10 01', ' г. Киев, ул. Киквидзе д. 13Б, кв 22.', NULL, NULL, 1),

(37, '1111', '1111', '1111', '1111', '1111', 'b59c67bf196a4758191e42f76670ceba', 1);


- -



Структура таблицы `dostavka`


TABLE IF NOT EXISTS `dostavka` (

`dostavka_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,

`name` varchar(255) NOT NULL,KEY (`dostavka_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5;


Дамп данных таблицы `dostavka`


INTO `dostavka` (`dostavka_id`, `name`) VALUES

(1, 'по Украине'),

(2, 'Почтой'),

(3, 'по Киеву'),

(4, 'Самовывоз');


-



Структура таблицы `goods`


TABLE IF NOT EXISTS `goods` (

`goods_id` int(10) unsigned NOT NULL AUTO_INCREMENT,

`name` varchar(255) NOT NULL,

`keywords` varchar(255) NOT NULL,

`description` varchar(255) NOT NULL,

`img` varchar(255) NOT NULL DEFAULT 'no_image.jpg',

`goods_brandid` tinyint(3) unsigned NOT NULL,

`anons` text NOT NULL,

`content` text NOT NULL,

`visible` enum ('0', '1') NOT NULL DEFAULT '1',

`hits` enum ('0', '1') NOT NULL DEFAULT '0',

`new` enum ('0', '1') NOT NULL DEFAULT '0',

`sale` enum ('0', '1') NOT NULL DEFAULT '0',

`price` float NOT NULL DEFAULT '0',

`date` date NOT NULL,

`img_slide` varchar(255) DEFAULT NULL,KEY (`goods_id`),KEY `name` (`name`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=15;



Дамп данных таблицы `goods`


INTO `goods` (`goods_id`, `name`, `keywords`, `description`, `img`, `goods_brandid`, `anons`, `content`, `visible`, `hits`, `new`, `sale`, `price`, `date`, `img_slide`) VALUES

(1, 'Kaspersky Internet Security 2014', 'Kaspersky', «, '1.jpg', 23, '<p>\r\n<br />\r\n<span id= «copyinfo» style=«margin: 0px; padding: 0px; border: 0px; outline: none; color: rgb (20, 97, 186); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 14px; position: absolute; overflow: hidden; width: 1px; height: 1px;»><a href= «#"justify"><b style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Лицензия на 1 год, 3 ПК.</b><br style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px;» />\r\n<span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Kaspersky Internet Security для всех устройств &ndash; единое комплексное решение для защиты любых устройств на платформах Windows, Android и Mac OS.</span><br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Подробнее:<a href= «#"justify">(2, 'Dr. Web Security Space', 'Dr. Web', «, '2.jpg', 23, '<p>\r\n<br />\r\n<span id= «copyinfo» style=«margin: 0px; padding: 0px; border: 0px; outline: none; color: rgb (102, 0, 153); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 14px; position: absolute; overflow: hidden; width: 1px; height: 1px;»><a href= «#"justify"><span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Комплексная защита для Windows, антивирус для Mac OS X, Linux</span><br style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px;» />\r\n<span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Мгновенная защита из &laquo; облака&raquo;</span><br style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px;» />\r\n<span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Защита для мобильного &mdash; в подарок!</span><br style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px;» />\r\n<span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Поддержка Windows 8</span><br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Подробнее:<a href= «#"justify">(3, 'ESET Smart Security 6', «, «, '3.jpg', 23, «, '<p>\r\n<span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px;»>ESET Smart Security &mdash; комплексное решение нового поколения, которое предоставляет многоуровневую защиту компьютера от различных угроз и их мутаций, атак хакеров, кражи конфиденциальной информации, вредоносных веб-сайтов, навязчивого спама и обеспечивает безопасность при работе онлайн, посещении социальных сетей, онлайн игр, а также передаче информации через сменные медиа носители.</span><br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; ">Подробнее:<a href= «#"justify">(4, 'Norton 360 Ru', 'Norton', «, '4.jpg', 23, «, '<p>\r\n<b style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px;»><font color= "#ff0000»>редставляем новый Norton 360.</font></b><br style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px;» />\r\n<span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Наши непревзойденные средства безопасности в Интернете и защиты от вирусов Обеспечивает превентивную защиту, позволяя вам заниматься в Интернете всем, чем захочется, без малейших опасений Сверхбыстрый уровень сетевой защиты блокирует угрозы еще до того, как они успеют проникнуть в ваш компьютер Эффективные средства удаления угроз выявляют и устраняют даже самые сложные для удаления угрозы</span><br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Подробнее:<a href= «#"justify">(5, 'Windows 8.1 Professional 32-bit/64-bit Ukrainian DVD BOX', 'Windows 8.1', «, '5.jpg', 26, '<p>\r\n<br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px;»>Подробнее:<a href= «#"justify"><span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px;»>Windows 8.1 &mdash; усовершенствованная и построенная на базе Windows&nbsp;</span><span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">8</span><span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">. В центре внимания остаются приложения, они поддерживают новые способы взаимодействия с системой и дают пользователям более широкие возможности погружения в содержимое. Коробочная версия может быть установлена на устройство без наличия предыдущей версии/</span><br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Подробнее:<a href= «#"justify">(6, 'WAU Windows 7 Starter to Home Premium 7 English UPG BOX', 'Windows 7', «, '6.jpg', 26, «, '<ul><li style= «margin: 0px; padding: 0px; border: 0px; ">\r\nПрограмма обновления Windows Anytime Upgrade (WAU) призванаоблегчить пользователям базовых редакций Windows 7 обновление до расширенных редакций.&nbsp; Она предназначена в для домашних пользователей, позволяя обновлять ее от Windows 7 Starter до редакции Windows 7 Home Premium.<br />\r\n<span id= «copyinfo» style= «position: absolute; overflow: hidden; width: 1px; height: 1px;»>Подробнее:<a href= «#"justify">(7, 'Windows 7 Ultimate Russian DVD BOX', 'Windows 7', «, '7.jpg', 26, '<p>\r\n<br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px;»>Подробнее:<a href= «#"justify"><span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px;»>Windows 7 Ultimate &mdash; это наиболее универсальный и производительный выпуск Windows 7.</span></p>', '1', '1', '0', '0', 3669, '2014-05-21', NULL),

(8, 'Microsoft Office 365 Personal 32/64', 'Microsoft Office 365', «, '8.jpg', 27, '<p>\r\n<br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px;»>Подробнее:<a href= «#"justify"><li style= «margin: 0px; padding: 0px; border: 0px; ">\r\nMicrosoft Office 365 Personal &mdash; самый дешёвый вариант подписки.&nbsp; Стандартный набор программ: Word, Excel, PowerPoint, Access, Outlook и OneNote. В качестве дополнительных бонусов значатся ежемесячные бесплатные 60 минут звонков по Skype и дополнительные 20 гигабайт на &laquo; облачном&raquo; сервисе OneDrive.&nbsp;<span style= «color: rgb (102, 102, 102);»>Полная электронная лицензия ESD на 1 пользователя на 1 год<br />\r\n<span id= «copyinfo» style= «position: absolute; overflow: hidden; width: 1px; height: 1px;»>Подробнее:<a href= «#"justify"><li style= «margin: 0px; padding: 0px; border: 0px;»>\r\n<div>\r\n &nbsp;</div>\r\n</li>\r\n</ul>', '1', '1', '0', '0', 659, '2014-05-21', NULL),

(9, 'Microsoft Project Pro 2013 32/64 RU', 'Microsoft Project', «, '9.jpg', 27, '<p>\r\n<br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px;»>Подробнее:<a href= «#"justify"><span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px;»>Project Pro 2013 имеет в своем составе надежные средства для эффективного управления проектами</span><span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px; ">, в которых оптимально сочетаются практичность, функциональность и гибкость.</span><br style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px;» />\r\n<b style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px; ">Полная электронная лицензия ESD на 1 пользователя<br />\r\n<span id= «copyinfo» style= «position: absolute; overflow: hidden; width: 1px; height: 1px; ">Подробнее:<a href= «#"justify">(10, 'Call of Duty: Black Ops 2', 'Call of Duty', «, '10.jpg', 25, «, '<p>\r\n<span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px;»>Black Ops 2 &ndash; прямое продолжение Black Ops.</span><span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">&nbsp; Повествование охватывает два временных периода &ndash; &laquo; холодную войну&raquo; 80-х между США и СССР, и конфликт 2025 года, возникший между США и Китаем.</span><br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 15px; line-height: 19.202560424804688px; ">Подробнее:<a href= «#"justify">(11, 'FIFA 14', 'FIFA', «, '11.png', 25, '<p>\r\n<br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px;»>Подробнее:<a href= «#"justify"><span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px;»>Проверенный временем геймплей FIFA стал еще лучше благодаря инновациям, поощряющим творческую игру в центре поля и позволяющим задавать ее темп. Создавайте острые моменты и получайте ни с чем не сравнимое удовольствие, забивая голы!</span><br style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px;» />\r\n<br style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px;» />\r\n<span style=«color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px; ">FIFA 14 поддерживает EA SPORTS Football Club &ndash; онлайновый сервис, благодаря которому вы всегда остаетесь на связи с миром настоящего футбола и, конечно, с единомышленниками.</span><br />\r\n<span id= «copyinfo» style=«position: absolute; overflow: hidden; width: 1px; height: 1px; color: rgb (51, 51, 51); font-family: Arial, Helvetica, FreeSans, «Liberation Sans», «Nimbus Sans L», sans-serif; font-size: 13px; line-height: 16.639999389648438px; ">Подробнее:<a href= «#"justify">(12, 'ноутбук', 'ноутбук', «, '12.jpg', 31, «, «, '1', '0', '1', '0', 20000, '2014-10-01', NULL),

(13, 'монитор', 'монитор', «, '13.jpg', 29, «, «, '1', '0', '0', '1', 10000, '2014-10-01', NULL),

(14, 'видеокарта', 'видеокарта', «, '14.jpg', 30, «, «, '1', '0', '0', '0', 3000, '2014-10-01', NULL);


-



Структура таблицы `informers`


TABLE IF NOT EXISTS `informers` (

`informer_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,

`informer_name` varchar(255) NOT NULL,

`informer_position` tinyint(3) unsigned NOT NULL DEFAULT '0',KEY (`informer_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=9;



Дамп данных таблицы `informers`


INTO `informers` (`informer_id`, `informer_name`, `informer_position`) VALUES

(4, 'Тестовый информер', 0);


-



Структура таблицы `links`

-

TABLE IF NOT EXISTS `links` (

`link_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,

`link_name` varchar(255) NOT NULL,

`parent_informer` tinyint(3) unsigned NOT NULL,

`links_position` tinyint(3) unsigned NOT NULL DEFAULT '0',

`keywords` varchar(255) NOT NULL,

`description` varchar(255) NOT NULL,

`text` text NOT NULL,KEY (`link_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=17;


-



Структура таблицы `news`


TABLE IF NOT EXISTS `news` (

`news_id` int(10) unsigned NOT NULL AUTO_INCREMENT,

`title` varchar(255) NOT NULL,

`keywords` varchar(255) NOT NULL,

`description` varchar(255) NOT NULL,

`anons` text NOT NULL,

`text` text NOT NULL,

`date` date NOT NULL,KEY (`news_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=7;



Дамп данных таблицы `news`


INSERT INTO `news` (`news_id`, `title`, `keywords`, `description`, `anons`, `text`, `date`) VALUES

(6, 'Windows 8.1 Update 1', 'Windows 8.1', «, «, '<p style= «color: rgb (223, 223, 223); font-family: arial; font-size: 13px; line-height: 18px; background-color: rgb (37, 10, 51);»>\r\n<a href= «#"justify">Позавчера у наших читателей уже появилась возможность загрузить&nbsp;<a href= «#"justify"><a href= «#"justify">Обновление было установлено на ультрабук без тачскрина. Соответственно, как мы и говорили, при загрузке открывается рабочий стол, а не меню &ldquo; Пуск&rdquo; с Metro плитками как раньше. Для ПК, имеющих сенсорные экраны будет открываться Metro экран.</p>\r\n<p style= «color: rgb (223, 223, 223); font-family: arial; font-size: 13px; line-height: 18px; background-color: rgb (37, 10, 51);»>\r\nВ первую очередь, обратите внимание на панель задач, на которой расположились запущенные Metro приложения. Это наверное самое главное нововведение, теперь работая со скайпом для Windows 8 (не с классическим скайпом) и одновременно печатая документ в офисе, Вы можете переключаться между этими приложениями также как и между классическими программами.</p>\r\n<p style= «color: rgb (223, 223, 223); font-family: arial; font-size: 13px; line-height: 18px; background-color: rgb (37, 10, 51);»>\r\n<a href= «#"justify">Если подвести курсор мыши к Metro приложению, то на рабочем столе загрузится превью экрана этого приложения, как и в случае с классическими программами для Windows.</p>\r\n<p style= «color: rgb (223, 223, 223); font-family: arial; font-size: 13px; line-height: 18px; background-color: rgb (37, 10, 51);»>\r\n<a href= «#"justify">При работе с Metro приложением, Вы можете подвести курсор мыши к вверху экрана и у Вас появится меню с иконкой приложения, названием приложения, кнопкой свернуть и кнопкой закрыть. Нажав на иконку приложения, у Вас появится выпадающий список, который позволит Вам располовинить приложение вправо или в лево, свернуть приложение или вовсе его закрыть.</p>\r\n<p style= «color: rgb (223, 223, 223); font-family: arial; font-size: 13px; line-height: 18px; background-color: rgb (37, 10, 51);»>\r\n<a href= «#"justify">На экране &ldquo; Пуск&rdquo; Мы видим с Вами новые кнопки &ldquo; выключить&rdquo; и поиск, а также старое меню пользователя.</p>\r\n<p style= «color: rgb (223, 223, 223); font-family: arial; font-size: 13px; line-height: 18px; background-color: rgb (37, 10, 51);»>\r\n<a href= «#"justify">При нажатии на кнопку выключения появляется стандартный выпадающий список: &ldquo; Спящий режим&rdquo;, &ldquo; Выключение&rdquo; и &ldquo; Перезагрузка&rdquo;.</p>\r\n<p style= «color: rgb (223, 223, 223); font-family: arial; font-size: 13px; line-height: 18px; background-color: rgb (37, 10, 51);»>\r\n<a href= «#"justify">При нажатии кнопки поиска, открывается стандартный поиск Windows 8.</p>\r\n<p style= «color: rgb (223, 223, 223); font-family: arial; font-size: 13px; line-height: 18px; background-color: rgb (37, 10, 51);»>\r\nДругих, особо заметных изменений интерфейса в том обновлении, что есть у нас, я не заметил. Если Вы все-таки решили загрузить и установить обновление Windows 8.1 Update 1, то Вы можете сделать это&nbsp;<a href= «#"justify">- -



Структура таблицы `orders`


CREATE TABLE IF NOT EXISTS `orders` (

`order_id` int(10) unsigned NOT NULL AUTO_INCREMENT,

`customer_id` int(10) unsigned NOT NULL,

`date` datetime NOT NULL,

`dostavka_id` tinyint(3) unsigned NOT NULL,

`status` enum ('0', '1') NOT NULL DEFAULT '0',

`prim` text NOT NULL,KEY (`order_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=30;



Дамп данных таблицы `orders`


INTO `orders` (`order_id`, `customer_id`, `date`, `dostavka_id`, `status`, `prim`) VALUES

(24, 31, '2014-05-21 08:30:03', 1, '1', 'Позвоните пожалуйста после 10 вечера, до этого времени я на работ'),

(28, 36, '2014-05-22 00:59:27', 1, '0', «),

(29, 37, '2014-10-01 14:15:12', 2, '0', «);


-



Структура таблицы `pages`

-

TABLE IF NOT EXISTS `pages` (

`page_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,

`title` varchar(255) NOT NULL,

`keywords` varchar(255) NOT NULL,

`description` varchar(255) NOT NULL,

`position` tinyint(3) unsigned NOT NULL DEFAULT '0',

`text` text NOT NULL,KEY (`page_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=8;



Дамп данных таблицы `pages`


INTO `pages` (`page_id`, `title`, `keywords`, `description`, `position`, `text`) VALUES

(1, 'О магазине', 'Ключевики страницы «О магазине» ', 'Описание страницы «О магазине» ', 1, '<p style= «margin: 0px 0px 1em; padding: 0px; color: rgb (70, 70, 70); font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 22.5px;»>\r\nКогда не&nbsp; самых плохих людей объединяет не&nbsp; самая простая миссия, всегда получается что-то интересное. Уверенны, так произошло и&nbsp; в&nbsp; нашем случае.</p>\r\n<p style= «margin: 0px 0px 1em; padding: 0px; color: rgb (70, 70, 70); font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 22.5px;»>\r\nНаша миссия&nbsp;&mdash; сделать лицензионное программное обеспечение более доступным, а&nbsp; процесс его покупки максимально простым и&nbsp; удобным. Мы&nbsp; убеждены, что использование легального программного обеспечения не&nbsp; просто необходимость, но&nbsp; и&nbsp; признак рациональности и&nbsp; здравомыслия.</p>\r\n<p style= «margin: 0px 0px 1em; padding: 0px; color: rgb (70, 70, 70); font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 22.5px;»>\r\n<strong>Если вы&nbsp; пользователь</strong>&nbsp;&mdash; обращайтесь к&nbsp; нам не&nbsp; только за&nbsp; покупкой, но&nbsp; и&nbsp; за&nbsp; консультацией. Мы&nbsp; хотим уметь и&nbsp; знать больше, ваши вопросы для нас гораздо важнее множества официальных пресс-релизов.</p>\r\n<p style= «margin: 0px 0px 1em; padding: 0px; color: rgb (70, 70, 70); font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 22.5px;»>\r\n<strong>Если вы&nbsp; разработчик</strong>&nbsp;&mdash; обращайтесь, мы&nbsp; будем рады стать вашим надежным партнером.</p>\r\n<p style= «margin: 0px 0px 1em; padding: 0px; color: rgb (70, 70, 70); font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 22.5px;»>\r\n<strong>Если вы&nbsp; дистрибьютор программного обеспечения</strong>&nbsp;&mdash; значит нам точно по&nbsp; пути и&nbsp; мы&nbsp; обязательно познакомимся.</p>'),

(2, 'Оплата и доставка', 'ключевики', 'описание', 2, '<p>\r\n &nbsp;</p>\r\n<h2 style=«margin: 0.7em 0px 0.5em -15px; padding: 0px; font-weight: normal; font-family: «Trebuchet MS», Arial, Helvetica, sans-serif; font-style: italic; color: rgb (0, 0, 0); font-size: 24px; ">\r\n &nbsp; &nbsp; Оплата заказа</h2>\r\n<ul><li style= «margin: 0px 0px 0.5em; padding: 0px; text-indent: -1.4em;»>\r\n<strong>Наличными курьеру.</strong>&nbsp; Оплата производится в согласованное с вами время по указаному адресу.</li>\r\n<li style= «margin: 0px 0px 0.5em; padding: 0px; text-indent: -1.4em;»>\r\n<strong>Электронным платежом Web-Money.</strong>&nbsp; После согласования заказа мы&nbsp; присылаем вам счет, который вы&nbsp; можете оплатить через Keeper Classic, Light.</li>\r\n<li style= «margin: 0px 0px 0.5em; padding: 0px; text-indent: -1.4em;»>\r\n<strong>Безналичный платеж для физических лиц.</strong>&nbsp; На&nbsp; ваш электронный ящик будет отправлен счет, оплатить который вы&nbsp; можете в&nbsp; любом банке.</li>\r\n<li style= «margin: 0px 0px 0.5em; padding: 0px; text-indent: -1.4em;»>\r\n<strong>Безналичный расчет для юридических лиц.</strong>&nbsp; После обмена документами вы&nbsp; оплачиваете выставленный нами счет, после чего мы&nbsp; согласовываем время и&nbsp; место доставки.</li>\r\n</ul>\r\n<h2 style=«margin: 0.7em 0px 0.5em -15px; padding: 0px; font-weight: normal; font-family: «Trebuchet MS», Arial, Helvetica, sans-serif; font-style: italic; color: rgb (0, 0, 0); font-size: 24px;»>\r\n &nbsp; &nbsp; Доставка</h2>\r\n<ul><li style= «margin: 0px 0px 0.5em; padding: 0px; text-indent: -1.4em;»>\r\n<strong>Электронной почтой.</strong>&nbsp; По&nbsp; факту оплаты на&nbsp; ваш электронный адрес будет выслана электронная лицензия продукта или&nbsp; же ключ продукта. Время доставки&nbsp;&mdash; от&nbsp; нескольких минут до&nbsp; нескольких часов.</li>\r\n<li style= «margin: 0px 0px 0.5em; padding: 0px; text-indent: -1.4em;»>\r\n<strong>Самовывоз в москве.</strong>&nbsp; В&nbsp; согласованное время вы&nbsp; забираете заказ самостоятельно. Мы&nbsp; работаем с&nbsp;<span><li style= «margin: 0px 0px 0.5em; padding: 0px; text-indent: -1.4em;»>\r\n<strong>Курьером в москве.</strong>&nbsp; Доставка бесплатная в&nbsp; удобное для вас время. Время доставки различное (от&nbsp; нескольких часов до&nbsp; нескольких дней) и&nbsp; зависит от&nbsp; приобретаемого вами програмного обеспечения.</li>\r\n<li style= «margin: 0px 0px 0.5em; padding: 0px; text-indent: -1.4em;»>\r\n<strong>Курьером по москве.</strong>&nbsp; Такая доставка возможна в&nbsp; тех городах, где есть терминалы служб грузоперевозок, этот момент вы&nbsp; можете уточнить с&nbsp; любым из&nbsp; наших менеджеров. Время доставки&nbsp;&mdash; не&nbsp; более 2х&nbsp; дней с&nbsp; момента оформления лицензии.</li>\r\n<li style= «margin: 0px 0px 0.5em; padding: 0px; text-indent: -1.4em;»>\r\n<strong>Получение заказа на терминале перевозчика</strong>&nbsp; (Автолюкс, Ночной Экспресс, Нова Пошта). Для этого крайне желательно оформление вашего заказа через сайт, так как контактные данные будут указаны вами, без возможных ошибок. Время доставки&nbsp;&mdash; не&nbsp; более 2х&nbsp; дней с&nbsp; момента оформления лицензии.</li>\r\n</ul>'),

(4, 'Контакты', «, «, 3, '<h2 style=«margin: 0.7em 0px 0.5em -15px; padding: 0px; font-weight: normal; font-family: «Trebuchet MS», Arial, Helvetica, sans-serif; font-style: italic; color: rgb (0, 0, 0); font-size: 24px;»>\r\n &nbsp; Офис</h2>\r\n<p style= «margin: 0px 0px 1em; padding: 0px; color: rgb (70, 70, 70); font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 22.5px; ">\r\n03062, россия москва,&nbsp;<span>корпус&nbsp;<span>Телефоны:&nbsp;<span>Эл. почта:&nbsp;<a href= «mailto:[email protected]» style= «color: rgb (0, 93, 173);»>[email protected]</a><br />\r\nICQ:&nbsp;<span style= «line-height: 14.77199935913086px; color: rgb (34, 34, 34); font-size: 12px;»>598142429</span></p>\r\n<p style= «margin: 0px 0px 1em; padding: 0px; color: rgb (70, 70, 70); font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 22.5px;»>\r\n &nbsp;</p>\r\n<h2 style=«margin: 0.7em 0px 0.5em -15px; padding: 0px; font-weight: normal; font-family: «Trebuchet MS», Arial, Helvetica, sans-serif; font-style: italic; color: rgb (0, 0, 0); font-size: 24px;»>\r\n &nbsp; Банковские реквизиты</h2>\r\n<p style= «margin: 0px 0px 1em; padding: 0px; color: rgb (70, 70, 70); font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 22.5px;»>\r\nВысылаем по вашему запросу в любом удобном для вас формате.</p>');


- -



Структура таблицы `roles`


TABLE IF NOT EXISTS `roles` (

`id_role` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,

`name_role` varchar(255) NOT NULL,KEY (`id_role`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3;



Дамп данных таблицы `roles`


INTO `roles` (`id_role`, `name_role`) VALUES

(1, 'Пользователь'),

(2, 'Администратор');


-

-

Структура таблицы `zakaz_tovar`

-

TABLE IF NOT EXISTS `zakaz_tovar` (

`zakaz_tovar_id` int(10) unsigned NOT NULL AUTO_INCREMENT,

`orders_id` int(10) unsigned NOT NULL,

`goods_id` int(10) unsigned NOT NULL,

`quantity` tinyint(3) unsigned NOT NULL,

`name` varchar(255) NOT NULL,

`price` float NOT NULL,KEY (`zakaz_tovar_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=40;


-

Дамп данных таблицы `zakaz_tovar`

-

INTO `zakaz_tovar` (`zakaz_tovar_id`, `orders_id`, `goods_id`, `quantity`, `name`, `price`) VALUES

(34, 24, 50, 1, 'Kaspersky Internet Security 2014', 453),

(38, 28, 7, 1, 'Windows 7 Ultimate Russian DVD BOX', 3669),

(39, 29, 2, 1, 'Dr. Web Security Space', 329);


/*! 40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

/*! 40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;

/*! 40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;


Листинг конфигурационного файла Apache

utf-8_flag magic_quotes_gpc Off404 /page404.html

On

#RewriteCond%{REQUEST_FILENAME}! - d

#RewriteCond%{REQUEST_FILENAME}! - f^page/(\d+)/?$ index.php? view=page&page_id=$1^(hits|new|sale)/?$ index.php? view=$1^category/(\d+)/?$ index.php? view=cat&category=$1^category/(\d+)/page=(\d+)?/?$ index.php? view=cat&category=$1&page=$2^category/(\d+)/order/([a-z]+)/page=(\d+)?/?$ index.php? view=cat&category=$1&order=$2&page=$3^news/(\d+)/?$ index.php? view=news&news_id=$1^archive/?$ index.php? view=archive^archive/page=(\d+)?/?$ index.php? view=archive&page=$1^informer/(\d+)/?$ index.php? view=informer&informer_id=$1^product/(\d+)/?$ index.php? view=product&goods_id=$1^addtocart/(\d+)/?$ index.php? view=addtocart&goods_id=$1^reg/?$ index.php? view=reg^cart/?$ index.php? view=cart^cart/qty=(\d+)/id=(\d+)/?$ index.php? view=cart&qty=$1&id=$2

Приложение Б


Исходный код главной страницы


<! DOCTYPE html PUBLIC «- //W3C //DTD XHTML 1.0 Transitional //EN» «#"justify"><html xmlns= «#"justify"><head>

<meta http-equiv= «Content-Type» content= «text/html; charset=utf-8» />

<link rel= «stylesheet» type= «text/css» href=»/views/ishop/css/style.css» />

<! - [if lt IE 9]>

<script src= «#"justify"><! [endif]->

<script type= «text/javascript» src=»/views/ishop/js/functions.js»></script>

<script type= «text/javascript» src=»/views/ishop/js/jquery-1.7.2.min.js»></script>

<script type= «text/javascript» src=»/views/ishop/js/jquery-ui-1.8.22.custom.min.js»></script>

<script type= «text/javascript» src=»/views/ishop/js/jquery.cookie.js»></script>

<script type= «text/javascript»>var path = '/';</script>

<script type= «text/javascript» src=»/views/ishop/js/workscripts.js»></script>

<! - Fancybox ->

<script type= «text/javascript» src=»/fancybox/jquery.mousewheel-3.0.4.pack.js»></script>

<script type= «text/javascript» src=»/fancybox/jquery.fancybox-1.3.4.pack.js»></script>

<link rel= «stylesheet» type= «text/css» href=»/fancybox/jquery.fancybox-1.3.4.css» media= «screen» />

<! - Fancybox ->

<meta name= «description» content= «Магазин программных продуктов» />

<meta name= «keywords» content= «Магазин программных продуктов, продажа, днепропетровск» />

<title>Магазин программных продуктов</title>

</head>


<body>

<ul>

<li><a href=»/">Главная</a></li>

<li><a href=»/page/1»>О магазине</a></li>

<li><a href=»/page/2»>Оплата и доставка</a></li>

<li><a href=»/page/4»>Контакты</a></li>

</ul>

<div>

<div>

<a href=»/"><img>

<div>

<p><strong>Телефон:</strong><br />

<span>+7 (497) 881-10-01</span></p>

<p><strong>Режим работы:</strong><br />

Будние дни: с 8:00 до 17:00<br />

Без выходных.</p>

</div>

<form method= «get» action=»/">

<ul>

<input type= «hidden» name= «view» value= «search» />

<li><input type= «text» name= «search» id= «quickquery» placeholder= «Что вы хотите купить?» /></li>

<script type= «text/javascript»>

// <! [CDATA [('quickquery');

// ]]>

</script>

<li><input>

</ul>

</form>

</div><div id= «contentwrapper»>

<div id= «content»>

<div>

<h1>Лидеры продаж</h1>


<div>

<h2><a href=»/product/3»>ESET Smart Security 6</a></h2>

<div>

<a href=»/product/3»><img src=»/userfiles/product_img/baseimg/3.jpg» alt=»» /></a>

</div> <! - .product-table-img ->

<p>Цена: <span>534.</span></p>

<a href=»/addtocart/3»><img>

</div>

<div>

<h2><a href=»/product/7»>Windows 7 Ultimate Russian DVD BOX</a></h2>

<div>

<a href=»/product/7»><img src=»/userfiles/product_img/baseimg/7.jpg» alt=»» /></a>

</div> <! - .product-table-img ->

<p>Цена: <span>3669.</span></p>

<a href=»/addtocart/7»><img>

</div>

<div>

<h2><a href=»/product/8»>Microsoft Office 365 Personal 32/64</a></h2>

<div>

<a href=»/product/8»><img src=»/userfiles/product_img/baseimg/8.jpg» alt=»» /></a>

</div> <! - .product-table-img ->

<p>Цена: <span>659.</span></p>

<a href=»/addtocart/8»><img>

</div>

<div>

<h2><a href=»/product/11»>FIFA 14</a></h2>

<div>

<a href=»/product/11»><img src=»/userfiles/product_img/baseimg/11.png» alt=»» /></a>

</div> <! - .product-table-img ->

<p>Цена: <span>369.</span></p>

<a href=»/addtocart/11»><img>

</div>


</div></div>

</div>


<div id= «left-bar»>

<div>

<h2>Каталог</h2>

<h3>

<h3>

<h3>

<! - Меню категорий ->

<h4> - Программные продукты</h4>

<ul>

<li><a href=»/category/23»>Антивирусы</a></li>

<li><a href=»/category/25»>Игры</a></li>

<li><a href=»/category/30»>комплектующие</a></li>

<li><a href=»/category/29»>мониторы</a></li>

<li><a href=»/category/31»>ноутбуки</a></li>

<li><a href=»/category/26»>Операционные системы</a></li>

<li><a href=»/category/27»>Офисные приложения</a></li>

</ul>

<! - Меню категорий ->

<div>

<h3>Новости</h3>

<p>

<span>2014-05-21</span>

<a href=»/news/6»>Windows 8.1 Update 1</a>

</p>

<a href=»/archive»>

</div> <! - .news ->

<! - Информеры ->

<! - Информеры ->

</div>

</div>

<div id= «right-bar»>

<div>

<div>

<h2>Авторизация</h2>

<div>

<form method= «post» action= "#»>

<label for= «login»>Логин: </label><br />

<input type= «text» name= «login» id= «login» /><br />

<label for= «pass»>Пароль: </label><br />

<input type= «password» name= «pass» id= «pass» /><br /><br />

<input type= «submit» name= «auth» id= «auth» value= «Войти» />

<p>

</form>

</div> <! - .authform ->

</div> <! - .enter ->

<div>

<h2>Корзина</h2>

<div>

<p>

Корзина пуста

</p>

</div>

</div> <! - .basket ->

<div>

<h2>Выбор по параметрам</h2>

<div>

<form method= «get» action=»/">

<input type= «hidden» name= «view» value= «filter» />

<p>Стоимость:</p>

от <input>

до <input>

руб.

<br /><br />

<p>Категории:</p>

<input type= «checkbox» name= «brand[]» value= «23» id= «23» />

<label for= «23»>Антивирусы</label> <br />

<input type= «checkbox» name= «brand[]» value= «25» id= «25» />

<label for= «25»>Игры</label> <br />

<input type= «checkbox» name= «brand[]» value= «30» id= «30» />

<label for= «30»>комплектующие</label> <br />

<input type= «checkbox» name= «brand[]» value= «29» id= «29» />

<label for= «29»>мониторы</label> <br />

<input type= «checkbox» name= «brand[]» value= «31» id= «31» />

<label for= «31»>ноутбуки</label> <br />

<input type= «checkbox» name= «brand[]» value= «26» id= «26» />

<label for= «26»>Операционные системы</label> <br />

<input type= «checkbox» name= «brand[]» value= «27» id= «27» />

<label for= «27»>Офисные приложения</label> <br />


<input>

</form>

</div>

</div>

</div>

</div><div>

<div>

<div>

<p>Сopyright © 2014</p>

</div>

<div>

<h2>Телефон:</h2>

<h2>+7 (497) 881-10-01</h2>


<h2>Режим работы:</h2>

<p>Будние дни: с 8:00 до 17:00<br />

Без выходных. </p>

</div>

<div>

<p>Меню:</p>

<ul>

<li><a href=»/">Главная</a></li>

<li><a href=»/page/1»>О магазине</a></li>

<li><a href=»/page/2»>Оплата и доставка</a></li>

<li><a href=»/page/4»>Контакты</a></li>

</ul>

</div>

</div></div>

</body>

</html>


Приложение В


Листинг классов


<? php

('ISHOP') or die ('Access denied');


/* ===Распечатка массива=== */print_arr($arr) {«<pre>»;_r($arr);

echo «</pre>»;

}

/* ===Распечатка массива=== */


/* ===Фильтрация входящих данных=== */

function clear($var) {

$var = mysql_real_escape_string (strip_tags($var));

return $var;

}

/* ===Фильтрация входящих данных=== */


/* ===Редирект=== */redirect ($http = false) {($http) $redirect = $http;$redirect = isset ($_SERVER['HTTP_REFERER'])? $_SERVER ['HTTP_REFERER']: PATH;(«Location: $redirect»);

exit;

}

/* ===Редирект=== */


/* ===Выход пользователя=== */logout() {($_SESSION['auth']);

}

/* ===Выход пользователя=== */


/* ===Добавление в корзину=== */

function addtocart ($goods_id, $qty = 1) {(isset($_SESSION['cart'] [$goods_id])) {

// если в массиве cart уже есть добавляемый товар

$_SESSION['cart'] [$goods_id] ['qty'] += $qty;

return $_SESSION['cart'];

} else {

// если товар кладется в корзину впервые

$_SESSION['cart'] [$goods_id] ['qty'] = $qty;

return $_SESSION['cart'];

}

}

/* ===Добавление в корзину=== */


/* ===Удаление из корзины=== */

function delete_from_cart($id) {($_SESSION['cart']) {(array_key_exists ($id, $_SESSION['cart'])) {

$_SESSION ['total_quantity'] -= $_SESSION['cart'] [$id] ['qty'];

$_SESSION ['total_sum'] -= $_SESSION['cart'] [$id] ['qty'] * $_SESSION['cart'] [$id] ['price'];

unset ($_SESSION['cart'] [$id]);

}

}

}

/* ===Удаление из корзины=== */


/* ===кол-во товара в корзине + защита от ввода несуществующего ID товара=== */

function total_quantity() {

$_SESSION ['total_quantity'] = 0;($_SESSION['cart'] as $key => $value) {

if (isset($value['price'])) {

// если получена цена товара из БД - суммируем кол-во

$_SESSION ['total_quantity'] += $value['qty'];

} else {

// иначе - удаляем такой ID из сессиии (корзины)($_SESSION['cart'] [$key]);

}

}

}

/* ===кол-во товара в корзине + защита от ввода несуществующего ID товара=== */


/* ===Постраничная навигация=== */pagination ($page, $pages_count, $modrew = 1) {

if ($modrew == 0) {

// если функция вызывается на странице без ЧПУ($_SERVER['QUERY_STRING']) { // если есть параметры в запросе

$uri =»?»;($_GET as $key => $value) {

// формируем строку параметров без номера страницы… номер передается параметром функции

if ($key!= 'page') $uri.= «{$key}={$value}&amp;»;

}

}

} else {

// если функция вызвана на странице с ЧПУ

$uri = $_SERVER ['REQUEST_URI'];

$params = explode(«/», $uri);

$uri = null;($params as $param) {(! empty($param) AND! preg_match («#page=#», $param)) {

$uri.= «/$param»;

}

}

$uri.= «/»;

}



// формирование ссылок

$back = «; // ссылка НАЗАД

$forward = «; // ссылка ВПЕРЕД

$startpage = «; // ссылка В НАЧАЛО

$endpage = «; // ссылка В КОНЕЦ

$page2left = «; // вторая страница слева

$page1left = «; // первая страница слева

$page2right = «; // вторая страница справа

$page1right = «; // первая страница справа

($page > 1) {

$back = «<a>

}($page < $pages_count) {

$forward = «<a>

}($page > 3) {

$startpage = «<a>

}($page < ($pages_count - 2)) {

$endpage = «<a>

}($page - 2 > 0) {

$page2left = «<a>

}($page - 1 > 0) {

$page1left = «<a>

}($page + 2 <= $pages_count) {

$page2right = «<a>

}($page + 1 <= $pages_count) {

$page1right = «<a>

}

// формируем вывод навигации

echo '<div>

}

/* ===Постраничная навигация=== */


КУРСОВОЙ ПРОЕКТ Информационная система сети магазинов компьютерного оборудования 1. Анализ при

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ