Создание сайта магазина ювелирных украшений на PHP+MySQL

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

Создание сайта магазина ювелирных украшений на PHP+MySQL

Курсовой проект

Компьютеры, программирование

Другие курсовые по предмету

Компьютеры, программирование

Сдать работу со 100% гаранией

Курсовая работе

на тему: Создание сайта магазина ювелирных украшений на PHP+MySQL


ВВЕДЕНИЕ

Информатизация и перевод нашей общественной жизни в сферу интернета уже много лет являются перспективной и быстроразвивающейся сферой IT-технологий. Другие области человеческой деятельности получают мощнейший толчок в своем развитии благодаря им. Веб-сайты увеличивают продажи магазинов, а также удобство покупок. Это привело к тому, что в настоящее время даже небольшим магазинам необходимо иметь свой собственный сайт или им грозит большая потеря собственного дохода. Основой структуры сайта является HTML-код. Но так как масштаб и сложность сайтов постоянно растут, а также необходимы инструменты для динамического изменения информации на сайте, то помимо HTML-кода используют PHP. Небольшой код на PHPспособен помочь буквально в самые кратчайшие сроки вести удобное отслеживание и динамическое изменение количества и типа товаров в магазине. Создаются шаблонизаторы, позволяющие минимизировать количество создаваемого кода, а также добавить гибкость разработки. Для управления сайтом создаются административные панели. В связке с PHP используют MySQL, который является удобным хранилищем информации. MySQL является безусловно огромным хранилищем всего что вообще есть на сайте. Кроме того, вся эта информация может быть скрыта и полностью закодирована от внешнего, стороннего вмешательства. И вот уже обладая такой базой с помощью PHP она собирается в полноценный, удобный для динамического изменения сайт.

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

Цель курсовой работы: разработать программное средство интернет-витрину, написав собственноручный шаблонизатор.

На сайте должны присутствовать следующие элементы:

    главное меню, обязательные пункты: главная страница, об авторе, о фирме (с адресами, телефонами и схемой подъезда к магазину);

    разбиение продаваемого товара по группам - не менее 3х групп, каждая группа товаров должна быть отдельным пунктом главного меню;

    список товаров должен включать - не менее 10 товаров. представить в виде таблицы: название товара, основные характеристики товара (2-3шт), цена;

    возможность просмотра информации о каждом отдельном товаре (отдельная станица: картинка и текст);

    административная панель сайта (должна быть защищена паролем): сделать возможным добавление товара, удаление, изменение описания и цены товара. Возможность редактирования html-кода страниц: главная страница, об авторе, о фирме;

    на сервере должны быть отключены register_globals и "магические кавычки".

Сайт должен быть построен на шаблонах (т.е. с использованием собственноручно написанного шаблонизатора!).

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

загрузка авторизация база данные


1. Алгоритмическое конструирование


1.1 Алгоритм работы шаблонизатора сайта

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

Алгоритм работы шаблонизатора сайта изображен на рисунке 1.1.

Рисунок 1.1 – Блок-схема алгоритма работы шаблонизатора сайта


1.2 Алгоритм загрузки изображения на сервер

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

Алгоритм загрузки изображения на сервер изображен на рисунке 1.2.

Рисунок 1.2 – Блок-схема алгоритма загрузки изображения на сайт


1.3 Алгоритм работы модуля административной панели

Происходит проверка соединения с базой данных. Проверяется был ли выполнен пользователем запрос на редактирование информации (изменение, удаление, добавление). Если был, то формируется необходимая строка запроса и затем происходит выполнение запроса. Формируется и отображается требуемая страница административной панели. Алгоритм работы модуля административной панели изображен на рисунке 1.3.

Рисунок 1.3 – Блок-схема алгоритма работы модуля административной панели


2. Программное конструирование


2.1 Обоснование выбора средств разработки
2.1.1 ApatcheHTTP-сервер

ApacheHTTP-сервер – свободный веб-сервер.

Apache является кроссплатформенным ПО, поддерживает операционные системы Linux, BSD, Mac OS, Microsoft Windows, Novell NetWare, BeOS.

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

Apache имеет встроенный механизм виртуальных хостов. Он позволяет полноценно обслуживать на одном IP-адресе множество сайтов (доменных имён), отображая для каждого из них собственное содержимое.


2.1.2 PHP

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

Язык и его интерпретатор разрабатываются группой энтузиастов в рамках проекта с открытым кодом. Проект распространяется под собственной лицензией, несовместимой с GNU GPL.

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

    автоматическое извлечение POST и GET-параметров, а также переменных окружения веб-сервера в предопределённые массивы;

    взаимодействие с большим количеством различных систем управления базами данных (MySQL, MySQLi, SQLite, PostgreSQL, Oracle (OCI8), Oracle, Microsoft SQL Server, Sybase, ODBC, mSQL, IBM DB2, Cloudscape и Apache Derby, Informix, Ovrimos SQL, Lotus Notes, DB++, DBM, dBase, DBX, FrontBase, FilePro, Ingres II, SESAM, Firebird / InterBase, Paradox File Access, MaxDB, Интерфейс PDO);

    автоматизированная отправка HTTP-заголовков;

    работа с HTTP-авторизацией;

    работа с cookies и сессиями;

    работа с локальными и удалёнными файлами, сокетами;

    обработка файлов, загружаемых на сервер;

    работа с XForms.

2.1.3 Notepad++

Notepad++ — кроссплатформенный проприетарный текстовый редактор.

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

Notepad++ поддерживает большое количество языков программирования и имеет возможность подсветки синтаксиса для C, C++, C#, CSS, D, Dylan, Erlang, HTML, Groovy, Haskell, Java, JavaScript, LaTeX, Lisp, Lua, Markdown, MATLAB, OCaml, Perl, PHP, Python, R, Ruby, SQL, TCL и XML.

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

Notepad++ может быть оснащён менеджером пакетов, который позволяет пользователю находить, устанавливать, обновлять и удалять пакеты без перезагрузки программы. Менеджер поддерживает установленные пакеты в актуальном состоянии, загружая новые версии из репозиториев. Кроме того, он предоставляет команды для активации и деактивации установленных пакетов.


2.1.4 MySQL

MySQL – свободная реляционная система управления базами данных. Разработку и поддержку MySQL осуществляет корпорация Oracle, получившая права на торговую марку вместе с поглощённой Sun Microsystems, которая ранее приобрела шведскую компанию MySQL AB. Продукт распространяется как под GNU General Public License, так и под собственной коммерческой лицензией. Помимо этого, разработчики создают функциональность по заказу лицензионных пользователей. Именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP, VertrigoServ. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL-лицензированию, в СУБД My

Лучшие

Похожие работы

1 2 3 4 > >>