Автор работы: Пользователь скрыл имя, 30 Сентября 2013 в 10:37, курсовая работа
Доставка заказа. После отправки заказа с покупателем связывается продавец и уточняет место и время, в которое следует доставить заказ. Доставка осуществляется либо собственной курьерской службой, либо компанией, предоставляющей услуги доставки, либо по почте - посылкой или бандеролью.
Введение 3
1. Постановка задачи 4
2. База данных 5
3. Функционал сайта 6
3.1. Главная страница 6
3.2. Регистрация 9
3.3. Просмотр списка товаров 11
3.4. Просмотр товара 13
3.5. Отправка в корзину 14
3.6. Личный кабинет 15
3.7. Панель менеджера 16
3.7.1. Управление типами товаров 16
3.7.2. Управление товарами 18
3.7.3. Новые заказы 19
3.7.4. Выполненные заказы 21
3.7.5. Статистика 23
3.8. Панель администратора 26
4. Права доступа 27
Заключение 29
Список литературы 30
Приложение А 31
Приложение Б 37
Приложение В 42
Министерство образования и науки РФ
ФГБОУ ВПО «Вологодский
государственный технический
Кафедра АВТ
Дисциплина ТИП
Курсовая работа
Разработка сайта интернет-
Выполнил: Денисов И.Е.
Группа: ЭМ - 41
Принял: Сорокин А.Н.
Вологда
2012
Оглавление
Введение
Интернет-магазин - это магазин, «витрина» которого расположена в сети интернет и который дает возможность заказать товар через интернет.
В интернете появились удобные и недорогие магазины, и их услугами пользуется все больше и больше людей. Интернет-магазины - это торговые сайты компаний малого и среднего бизнеса. В интернет-магазине могут быть реализованы практически любые торговые схемы: торговля со склада и на заказ, торговля с частными лицами и с организациями, торговля вещественными и цифровыми товарами, услугами, информацией и т.д.
На сайте магазина обычно представлен подробный каталог товаров с ценами, на основе которого пользователь формирует свой заказ. Заказывая товары в интернет-магазине, вы можете получать их по почте или с курьером, а оплачивать непосредственно при получении или также через Интернет.
Доставка заказа. После отправки заказа с покупателем связывается продавец и уточняет место и время, в которое следует доставить заказ. Доставка осуществляется либо собственной курьерской службой, либо компанией, предоставляющей услуги доставки, либо по почте - посылкой или бандеролью.
Преимущества, которые даёт интернет-магазин:
1. Интернет-магазин работает 24 часа в сутки, 365 дней в году, без перерыва на обед, без выходных и праздничных дней.
2. Доступ к виртуальным витринам
магазина может получить любой
покупатель, находящийся в любой
точке планеты на любом
3. Профессионально грамотно
4. Интернет-магазин не имеет
ограничений на виртуальную
5. Владелец интернет-магазина может сдавать в аренду свои виртуальные торговые площади так же, как и владелец обычного магазина.
6. Интернет-магазин позволяет
7. Срок и стоимость создания интернет-магазина несоизмеримо ниже, чем обычного магазина.
8. Для создания интернет-магазина не требуется получения многочисленных разрешений и лицензий. Его не проверяет пожарный инспектор, санэпидемстанция и другие хорошо знакомые вам службы.
9. Развитие мобильных устройств для доступа в интернет (мобильный телефон, КПК и т.д.) позволяет получить доступ к интернет-магазину из любой точки мира, вне зависимости от местоположения потенциального клиента.
Все, что вы можете купить в физическом мире, может продаваться в сети интернет. Интернет-магазины обладают рядом преимуществ в сравнении с обычными, как для покупателей, так и для продавцов. Крупные интернет-магазины поддерживают чрезвычайно широкий ассортимент товаров. А множество одинаково хорошо доступных интернет-магазинов вместе создают столь широкий диапазон товаров, что с ним не сравнится никакой супермаркет реального мира.
1. Постановка задачи
Итогом разработки должен стать сайт интернет-магазина. В качестве сферы деятельности были выбраны компьютерные комплектующие и сопутствующие им товары.
Очевидно, что было необходимо разработать несколько интерфейсов: для посетителя, для пользователя, для менеджеров и для администратора. Доступ к каждому интерфейсу открыт в соответствии с полномочиями.
Интерфейс посетителя самый упрощенный. Посетитель может просматривать информацию главной страницы, список товаров и сами товары. Купить товар посетитель сможет только зарегистрировавшись, тем самым перейдя в категорию пользователей.
Интерфейс пользователя должен давать возможность совершать покупки, а так же открывать доступ к личному кабинету, где будут отображаться корзина, подготовленные заказы, а так же история выполненных заказов.
Интерфейс менеджеров должен предусматривать всевозможные операции с товарами, категориями товаров, описаниями. Помимо этого, необходимо организовать работу с заказами клиентов, т.е. предоставить необходимую информацию для оформления и отгрузки заказа.
Интерфейс администратора должен позволять
управлять правами
Помимо текстовой информации о товар необходимо предоставлять покупателю еще и графическую - фотографии товаров. Необходимо так же оформить сайт в спокойном неагрессивном стиле, не отвлекающем пользователя от основной задачи - совершения покупок.
Требуется предусмотреть проверку и разграничение прав доступа к различному контенту сайта в зависимости от прав пользователя.
2. База данных
В качестве СУБД используется MYSQL. Выбор обоснован поддержкой таблиц InnoDB, а так же ее бесплатностью. В ходе анализа требований к функционалу интернет-магазина была определена схема базы данных магазина.
Рис. 1 – Физическая схема БД
Для каждой из таблиц были определены поля.
Рис. 2 – Логическая схема БД
Таким образом, исходя из анализа требований становится очевидно, что для реализации полнофункциональной системы БД магазина достаточно всего лишь 7 таблиц.
В таблице klient хранится информация о клиенте: ФИО, контактные данные, логин и пароль, а так же метка, определяющая статус пользователя на сайте.
В таблице korzina хранятся данные о покупках пользователя, а именно – дата, сумма, статус покупки.
В таблице tovari_korz хранятся непосредственно данные о наполнении товарами корзины пользователя.
Таблица tovari содержит в себе информацию о товаре на складе, без описания его свойств.
Описание свойств товара находится в таблице opisanie.
И, наконец, таблица izobrajenia хранит в себе ссылки на изображения товара.
3. Функционал сайта
Функционал разрабатываемого сайта приблизительно аналогичен уже существующим аналогам, за исключением различных упрощений.
Рассмотрим функционал относительно каждого из экранов, видимых пользователем.
3.1. Главная страница
Рис. 3 – Главная страница
Нажатие на ссылку «Магазин» ведет на главную страницу сайта, отображенную на рис. 3. На этой странице отображается информация о магазине, о принципах его работы.
Нажатия на ссылки «F.A.Q.», «Способы оплаты», «Контакты» отобразят на странице информацию, соответствующую их названию.
Список типов товаров отображается динамически – изменение типов в базе менеджером вызовет перестроение этого списка и на сайте. Список отображается во всех пунктах главной страницы.
В верхнем правом углу станицы
расположена форма входа
Реализация формы входа при условии, что посетитель еще не вошел на сайт под своим логином:
if (!isset($_SESSION['id_klienta'
print '<table width="100%" height="81" border="0"><form action="login.php" method="get">
<tr>
<td width="10%" align="left">Логин:</td>
<td align="center">
<input type="text" name="login" id="login">
</td>
</tr>
<tr>
<td width="10%" align="left">Пароль:</td>
<td align="center">
<input type="password" name="password" id="password">
</td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Войти"><input
type="button" value="Регистрация" onclick=window.location.href="
</tr>
</form>
</table>'; //Выводим форму входа
После того, как посетитель зашел на сайт, вышеописанная форма меняется:
Рис. 4 – Главная страница вошедшего пользователя
Реализация:
if (isset($_SESSION['id_klienta']
{
$login=$_SESSION['login']; //Получаем логин
$id_klienta=$_SESSION['id_
$iniciali_klienta=$_SESSION['
$query_k=mysql_query("select id_korzini from korzina where id_klienta='".$id_klienta."' and status='nabor'");
while($row_k=mysql_fetch_row($
$id_korzini=$row_k[0]; //Получаем id корзины
$query_t=mysql_query("select count(id_tovara_korz) from tovari_korz where id_korzini='".$id_korzini."'")
while($row_t=mysql_fetch_row($
$kol_korz=$row_t[0]; //Выводим количество товара в корзине
if ($_SESSION['metka']=='
print 'Здравствуйте, <b>Администратор</b>!<br>
<a href="admin.php">Панель администратора</a><br><br>
<input type="button" value="Выйти" onclick=window.location.href="
else
if ($_SESSION['metka']=='manager'
print 'Здравствуйте, <b>'.$iniciali_klienta.'</b>!<
<a href="manager.php">Панель менеджера</a><br><br>
<input type="button" value="Выйти" onclick=window.location.href="
Else //Для пользователя
print 'Здравствуйте, <b>'.$iniciali_klienta.'</b>!<
<a href="cabinet.php">Личный кабинет</a><br>Наименований в корзине: '.$kol_korz.'<br>
<input type="button" value="Выйти" onclick=window.location.href="
}
Таким образом, администратор, пользователь и менеджер будут видеть разные приветствия и разные ссылки на кабинеты.
3.2. Регистрация
Теперь рассмотрим результат нажатия на кнопку «Регистрация».
Рис. 5 – Регистрация
Для прохождения процедуры
Реализация:
<script>
function check_values(UserForm)
{
var STATUS_DEF=true; //Статус правильности заполнения по умолчанию
var exp=/^[а-яёА-ЯЁ\s]+$/; //Регулярное выражение
if (exp.test(UserForm.fio.value)=
{
STATUS_DEF=false;
alert("Введите корректное ФИО (Например: Иванов Иван Иванович)");
UserForm.fio.focus();
}
var m_exp=/^([a-z0-9_-]+\.)*[
if (m_exp.test(UserForm.email.
{
STATUS_DEF=false;
alert("Введите корректный
UserForm.email.focus();
}
if (UserForm.password.value.
{
STATUS_DEF=false;
alert("Введите корректный
UserForm.password.focus();
}
if (UserForm.password.value!=
{
STATUS_DEF=false;
alert("Введенные пароль
и повтор пароля не совпадают")
UserForm.password.focus();
}
var l_exp=/^[a-zA-Z0-9]{3,10}$/;//
if (l_exp.test(UserForm.login.
{
STATUS_DEF=false;
alert("Введите корректный
UserForm.login.focus();
}
if (UserForm.target_address.
{
STATUS_DEF=false;
alert("Введите адрес");
UserForm.target_address.focus(
}
var t_exp=/^[0-9]+$/; //Правильность ввода телефона
if (t_exp.test(UserForm.phone_
{