Интернет-магазин "Компьютеры и оргтехника"
Основные задачи сайта. Авторизованный вход для администраторов сайта и менеджеров. Список товаров для продажи в интернет-магазине. Список каталогов, через которые осуществляется вход в таблицу с товарами. Варианты оплаты и доставки купленного товара.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 07.04.2012 |
Размер файла | 3,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Федеральное агентство по образованию
Государственное образовательное учреждение
Высшего профессионального образования
Камская государственная инжинерно-экономическая академия
Кафедра «ПИУ»
Курсовая работа
по дисциплине «Информационные технологии»
на тему: Интернет-магазин «Компьютеры и оргтехника»
Выполнил:
студент гр. 4368-с
Шорин К.В.
Проверил:
старший преподаватель
Петров Д.М.
Набережные Челны - 2009
Содержание
1. Описание задачи
2. Варианты использования системы
3. Описание базы данных
3.1 Структура таблиц
3.2 Описание таблиц
3.3 Схема базы данных
3.4 SQL запросы на создание таблиц
4. Назначение скриптов
5. Описание интерфейса
5.1 Интерфейс сайта
5.2 Интерфейс менеджера
5.3 Интерфейс администратора
6. Тесты для проверки работоспособности системы
6.1 Тестирование системы покупателя
6.2 Тестирование системы менеджера
6.3 Тестирование системы администратора
Список использованных источников
1. Описание задачи
Прежде чем приступить к созданию сайта интернет-магазина, рассмотрим подробнее основные задачи, которые он должен будет осуществлять. Начнем с того, для какого круга лиц предназначен сайт, и что им необходимо знать для осуществления покупки.
Интернет-магазин - «Компьютеры и оргтехника» осуществляет продажу системных блоков, мониторов, комплектующих, принтеры, сканеры и т.д. Основным покупателем является лицо, непосредственно связанное с компьютером.
Основными задачами сайта являются:
- авторизованный вход для администраторов сайта и менеджеров;
- список товаров для продажи выводимый с помощью PHP;
- список каталогов, через которые осуществляется вход в таблицу с товарами;
- система должна позволять помещать товар, с указанным количеством, в корзину;
- система должна позволять выбрать варианты оплаты и доставки, с изменением суммы;
- для администратора должна быть возможность редактирования товаров и каталогов, а также пользователей, включается также возможность редактирования информации о фирме и контакты, добавление новостей и редактирование голосования;
- для менеджеров осуществлена возможность просматривания заказов и установления им статуса.
2. Варианты использования системы
При взаимодействии пользователя с системой, последняя выполняет ряд работ, которые образуют вариант использования системы. Рассмотрим каждый вариант использования по отдельности.
Вход в систему осуществляется тремя способами (путями):
- Администратор;
- Менеджер;
- Покупатель.
Два первых из этих способа используют вход с авторизацией.
Охарактеризуем каждый из этих пользователей подробнее.
Покупатель имеет следующие возможности:
1. Просматривать список товаров. При просмотре используется система каталожного хранения товара, то есть товары сгруппированы в каталоги.
2. Помещать товар в корзину.
3. Удалять товар из корзины.
4. Отправлять заказ для дальнейшей ее обработки.
5. Осуществлять поиск по каталогу
Менеджер в свою очередь имеет следующие преимущества и возможности:
1. Вход в систему как менеджер под своим логином и паролем, который вводится.
2. Просмотреть списоки заказов.
3. Изменять статусы заказов.
4. Взять на исполнение заказ под свое имя.
5. Удалять заказ.
Администратор сайта имеет большой перечень преимуществ:
1. Входить в систему как администратор, используя логин и пароль.
2. Редактировать товары и каталоги.
3. Просматривать информацию о пользователях системы, редактировать, добавлять и удалять их.
Вариант 1.1
Название |
Просматривать списки товаров |
|||
Автор |
Шорин К.В. |
Последнее обновление |
Шорин К.В. |
|
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Покупатель |
|||
Описание |
Покупатель просматривает каталог товаров, фотографии, описание (то есть открытие pdf) |
|||
Предварительные условия |
Нажимаем пункт из главного меню Каталог или выбираем из меню каталога любой пункт |
|||
Выходные условия |
1. Открытие каталога2. Открытие фотографии товара3. Открытие описания товара |
|||
Нормальное направление |
Просмотр одного определенного товара1. Покупатель открывает страницу2. Выбирает пункт меню3. Выбирает каталог, в котором храниться товар4. Щелкунть по фотографии5. Система открывает расширенную фотографию в новом окне6. Щелкаем по описанию7. Система открывает файл pdf |
|||
Альтернативное направление |
Просмотр других товаров катлога |
|||
Исключения |
- |
|||
Включает |
- |
|||
Приоритет |
Высокий |
|||
Частота использования |
Часто |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Нет |
Вариант 1.2
Название |
Помещать товар в корзину |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Покупатель |
|||
Описание |
Помещать товар в корзину для отправки заказа |
|||
Предварительные условия |
Нажимаем кнопку поместить в заказ |
|||
Выходные условия |
1. Помещение товара в корзину2. Указание количества товара |
|||
Нормальное направление |
Просмотр одного определенного товара1. Покупатель открывает страницу2. Входит в каталог с товарами3. Покупатель пишет количество4. Нажимает кнопку помещения товара в заказ5. Система открывает окно заказов |
|||
Альтернативное направление |
Заказ второго товара1. Нажимаем кнопку переход в каталок2. Система переходит из корзины в каталог3. Возврат к пункту 3 |
|||
Исключения |
- |
|||
Включает |
Вариант 1.1 |
|||
Приоритет |
Высокий |
|||
Частота использования |
По мере необходимости |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
Предполагается, что покупатель осуществит заказ на несколько товаров сразу |
|||
Замечания и вопросы |
Нет |
Вариант 1.3
Название |
Удалять товар с корзины |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Покупатель |
|||
Описание |
Удаляет товар с корзины |
|||
Предварительные условия |
Помещение товара в корзину |
|||
Выходные условия |
Удаление товара |
|||
Нормальное направление |
Удаление одного товара1. Покупатель открывает страницу2. Помещаем товар в корзину (Вариант 4)3. Удаляет товар с корзины4. система выдает сообщение об удалении5. Пользователь нажимает кнопку «ОК»6. Система перемещается в корзину заказов |
|||
Альтернативное направление |
Удаление второго товараПереход к пункту 3 |
|||
Исключения |
- |
|||
Включает |
Вариант 1.4 |
|||
Приоритет |
Средний |
|||
Частота использования |
Редко |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
Вероятно удаление наскольких видов товаров |
|||
Замечания и вопросы |
Не прдусмотрена возможность удаления сразу нескольких товаров |
Вариант 1.4
Название |
Отправка заказа |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Покупатель |
|||
Описание |
Отправка заказа для дальнейшей обработки |
|||
Предварительные условия |
Помещение товара в корзину заказов |
|||
Выходные условия |
Создание заказа, удаление временной таблицы корзины заказа |
|||
Нормальное направление |
Осуществление первого заказа1. Покупатель открывает страницу2. Открывает каталог товаров3. Помещает товар в корзину4. Вбор условий оптлаты и отгрузки5. Заполняет обязательные поля (свои контактные данные)6. Покупатель нажимает кнопку отправить7. Появляется сообщение об отправки |
|||
Альтернативное направление |
Осуществление второго заказа1. Возврат к пункту 2 |
|||
Исключения |
Не введены обязательные поля:1. Система сообщает о том что не введены обязательные поля.2. Покупатель нажимает «ОК»3. Система начинает вариант использования заново |
|||
Включает |
Вариант 1.4 |
|||
Приоритет |
По мере необходимости |
|||
Частота использования |
Часто |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Нет |
Вариант 1.5
Название |
Осуществление поиска |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Покупатель |
|||
Описание |
Покупатель осуществляет поиск по каталогу |
|||
Предварительные условия |
Открытие сайта |
|||
Выходные условия |
Вывод результата поиска |
|||
Нормальное направление |
Осуществление первого поиска1. Покупатель открывает страницу2. Вводит критерий поиска3. Нажимет Enter4. Система осуществляет поиск по каталогам и товарам5. Система выводит результат поиска6. Пользователь нажимает ок |
|||
Альтернативное направление |
Второй поиск1. Переход ко второму пункту |
|||
Исключения |
- |
|||
Включает |
- |
|||
Приоритет |
Средний |
|||
Частота использования |
Всегда |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Не предусмотрено условие, что не найден результат, отображаются пустые таблицы |
Вариант 2.1
Название |
Входить в систему как менеджер |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Менеджер |
|||
Описание |
Менеджер входит в систему под своим логином и паролем |
|||
Предварительные условия |
Запуск сайта |
|||
Выходные условия |
Вход в систему |
|||
Нормальное направление |
Вход одного менеджера1. Менеджер открывает страницу2. Вводит пароль и логин3. Нажимает кнопку «ОК»4. Система выводит кнопку входа5. Менеджер нажимает кнопку «Вход»6. система открывает страницу менеджера |
|||
Альтернативное направление |
Вход следующего пользователя:- Необходимо выполнить все пункты |
|||
Исключения |
Ввод не верного логина и пароляСистема не отвечает |
|||
Включает |
- |
|||
Приоритет |
Высокий |
|||
Частота использования |
Всегда |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Нет |
Вариант 2.2
Название |
Просмотр списка заказов |
|||
Автор |
Последнее обновление |
. |
||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Менеджер |
|||
Описание |
Менеджер просматривает списки заказов |
|||
Предварительные условия |
Вход в систему менеджера |
|||
Выходные условия |
1. Открытие списка заказов2. Открытие списка товаров в заказе |
|||
Нормальное направление |
Просмотр одного заказа1. Вход в систему как менеджер2. Выбор пункта меню3. Осуществить просмотр заказа |
|||
Альтернативное направление |
Просморт второго заказаПереход ко второму пункту |
|||
Исключения |
- |
|||
Включает |
Вариант 2.1 |
|||
Приоритет |
Высокий |
|||
Частота использования |
Часто |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Нет |
Вариант 2.3
Название |
Изменять статусы заказов |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Менеджер |
|||
Описание |
Менеджер может изменять статусы - на прибыл, выолнен, выполняется, отменен |
|||
Предварительные условия |
Вход в систему менеджера |
|||
Выходные условия |
Изменение статуса заказа |
|||
Нормальное направление |
Выбор одного статуса1. Вход в систему как менеджер2. Выбор пункта меню3. Выборать изменение статуса4. Система открывает окно изменение статуса5. Выбор статуса6. Система меняет статус в заказе7. Выбор перехода в список |
|||
Альтернативное направление |
Выбор второго статусаПереход ко второму пункту |
|||
Исключения |
- |
|||
Включает |
Вариан 2.2 |
|||
Приоритет |
Высоки |
|||
Частота использования |
Часто |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Нет |
Вариант 2.4
Название |
Взять на исполнение заказ под свое имя |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Менеджер |
|||
Описание |
Менеджер может взять на испольнение заказ |
|||
Предварительные условия |
Просмотр заказов |
|||
Выходные условия |
Изменение исполнителя |
|||
Нормальное направление |
Взять один заказа на исполнение1. Вход в систему как менеджер2. Выбор пункта меню3. Щелкаем по исполнителю4. система окно менеджеров5. Нажимает закрепить6. Система вносит изменения в таблице заказа |
|||
Альтернативное направление |
Взять второй заказ на исполнениеПереход ко второму пункту |
|||
Исключения |
- |
|||
Включает |
Вариант 2.2 |
|||
Приоритет |
Высокий |
|||
Частота использования |
Часто |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Нет |
Вариант 2.5
Название |
Удалять заказ |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Менеджер |
|||
Описание |
Менеджер может удалять заказы и товары в заказах |
|||
Предварительные условия |
Вход в систему менеджера |
|||
Выходные условия |
Удаление заказа или товара в заказе |
|||
Нормальное направление |
Удаление одного заказа (товара в заказе)1. Вход в систему как менеджер2. Выбор пункта меню3. Удаление4. Система запрашивает подтверждение удаления5. Соглашение6. Система удаляет заказ (товар заказа) |
|||
Альтернативное направление |
Удаление второго заказа (товара заказа)Переход ко второму пункту |
|||
Исключения |
Менеджер передумал удалять (пункт 4)1. пользователь нажал далее в список2. Система переходит в список товара |
|||
Включает |
Вариант 2.2 |
|||
Приоритет |
Высокий |
|||
Частота использования |
Часто |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
Возможно, заказчик передумал осуществлять покупку |
|||
Замечания и вопросы |
Нет |
Вариант 3.1
Название |
Входить в систему как администратор |
|||
Автор |
Шорин К.В. |
Последнее обновление |
Шорин К.В. |
|
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Администратор |
|||
Описание |
||||
Предварительные условия |
Запуск сайта |
|||
Выходные условия |
Вход в систему как администратор |
|||
Нормальное направление |
Вход первого пользователя1. Запуск сайта2. Ввод логина и пароля3. Система обрабатывает и появлятся кнопка Вход4. Нажатие кнопки входа5. Система открывает панель администирования |
|||
Альтернативное направление |
Вход второго пользователяПовтор всех пунктов |
|||
Исключения |
- |
|||
Включает |
- |
|||
Приоритет |
Высокий |
|||
Частота использования |
При входе в систему |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Нет |
Вариант 3.2
Название |
Выполнение действий с товаром и каталогом |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Администратор |
|||
Описание |
Просмотр и редактирование списка товаров и каталогов |
|||
Предварительные условия |
Выбор пункта меню каталог |
|||
Выходные условия |
Изменение данных в таблице товаров (каталогов) |
|||
Нормальное направление |
Выполнение действий первого товара (каталога)1. Вход в систему как администратор2. Вход в каталог товаров3. Выбор условия редактирования (добавление, изменениу и удаление)4. Предложение системой выполнение5. Осуществление пользователем действий (ввод данных, нажатие кнопки ок)6. Выполнение системой действий (добавление, удаление и изменение) |
|||
Альтернативное направление |
Выполнение действий со вторым товаромПереход к третьему пункту |
|||
Исключения |
Администратор отменяет действие (пункт 5):Переход в каталог |
|||
Включает |
Вариант 3.1 |
|||
Приоритет |
Высокий |
|||
Частота использования |
Редко |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Нет |
Вариант 3.3
Название |
Действие над пользоватилями |
|||
Автор |
Последнее обновление |
|||
Дата создания |
25.01.09 |
Дата последнего обновления |
27.01.09 |
|
Действующие лица |
Администратор |
|||
Описание |
Добавление, изменение и удаление пользователя |
|||
Предварительные условия |
Вход в систему как администратор |
|||
Выходные условия |
Изменение данных в таблице Пользователи |
|||
Нормальное направление |
Действие над одним пользователем1. Вход в систему2. Осуществление действий над данными пользователя3. Запрос системой на осуществление действий4. Ввод данных и нажатие ОК5. Выполнение системой опрации6. Нажатие кнопки далее |
|||
Альтернативное направление |
Действие над вторым пользователемВыполнение со второго пункта |
|||
Исключения |
Отказ осуществления действий (пункт 3)Нажатие кнопки далее |
|||
Включает |
Вариант 3.1 |
|||
Приоритет |
Высокий |
|||
Частота использования |
При необходимости |
|||
Бизнес-правила |
- |
|||
Особые требования |
нет |
|||
Допущения |
- |
|||
Замечания и вопросы |
Нет |
3. Описание базы данных
База данных comp является основным элементом интернет-магазина «Компьютеров и оргтехники». Эта база данных позволяет хранить данные, которые являются основным источником для отображения информации, а именно: каталоги и содержащиеся в нем товары, пользователи, заказы и операции с ними, информацию о заказчиках и новости.
Управление базой данных занимается администраторы, которые являются основными пользователями, добавляющим в базу данных информацию. Все они зарегистрированы в базе данных под именами типом пользователей №2. Менеджеры объединены в группу 1. Другая группа пользователей называется не зарегестирована в таблице user, она тесно связана с заказами и регистрируются данный тип пользователей во время отправки заказа.
3.1 Структура таблиц
Моя база данных, то есть apogey содержит семь таблиц, шесть из которых созданы в PhpMyAdmin, одна создается в php скрипте при запуске сайта.
Рассмотрим их структуру:
razd - каталоги компьюторов
Поле |
Тип |
Функционал |
Описание |
|
id |
int(11) |
Уникальный код новости |
auto_increment |
|
nazv |
varchar(50) |
Текстовое название каталога |
||
por |
int(11) |
Порядковый номер каталога |
razd2- каталоги оргтехники
Поле |
Тип |
Функционал |
Описание |
|
id |
int(11) |
Уникальный код новости |
auto_increment |
|
nazv |
varchar(50) |
Текстовое название каталога |
||
por |
int(11) |
Порядковый номер каталога |
tovar - товары
Поле |
Тип |
Функционал |
Описание |
|
id |
int(11) |
Уникальный код новости |
auto_increment |
|
vid |
int(11) |
Вид каталога |
||
nazv |
varchar(50) |
Текстовое название товара |
||
foto |
varchar(50) |
Путь к рисунку товара |
||
opisanie |
text |
Текстовое описание товара |
||
zena |
float |
Цена товара |
tovar_zakaz - заказанные товары
Поле |
Тип |
Функционал |
Описание |
|
id |
int(11) |
Уникальный код новости |
auto_increment |
|
id_zakaz |
int(11) |
Код заказа (заказчика) |
||
id_tovar |
int(11) |
Код товара |
||
kol |
int(11) |
Количество товара |
||
summa |
float |
Сумма заказанного товара |
user - пользователи
Поле |
Тип |
Функционал |
Описание |
|
id |
int(11) |
Уникальный код новости |
auto_increment |
|
tip |
int(11) |
Номер типа пользователя |
1-менеджер,2-админ |
|
login |
varchar(50) |
Логин пользователя |
||
fio |
varchar(50) |
Фамилия, Имя, Отчество пользователя |
||
|
varchar(50) |
Электронная почта пользователя |
||
pass |
varchar(50) |
Пароль пользователя |
zak - временная таблица заказанных товаров
Поле |
Тип |
Функционал |
Описание |
|
id |
int(11) |
Уникальный код новости |
auto_increment |
|
id_tovar |
int(11) |
Код товара |
||
nazv |
varchar(20) |
Название заказанного товара |
||
firma |
varchar(10) |
Фирма заказанного товара |
||
foto |
varchar(50) |
Путь к фотографии |
||
opisanie |
text |
Описание заказанного товара |
||
zena |
float |
Цена заказанного товара |
||
kol |
int(11) |
Количество заказанного товара |
zakaz - заказ и заказчик
Поле |
Тип |
Функционал |
Описание |
|
id |
int(11) |
Уникальный код новости |
auto_increment |
|
FIO |
varchar(50) |
Фамилия, Имя, Отчество заказчика |
||
tel |
varchar(15) |
Телефон заказчика |
||
|
varchar(15) |
Электронная почта заказчика |
||
data |
date |
Дата заказа |
||
status |
varchar(15) |
Статус заказа |
||
id_men |
int(11) |
Код менеджера,исполняющего заказ |
3.2 Описание таблиц
Опишем каждую таблицу по отдельности для полного представления базы данных comp
Первая таблица «razd» хранит информацию о каталогах компьютеров, где порядок по которому происходит сортировка при отображении осуществляется по столбцу «por».
Следующая «razd2» аналогична первой, только это каталог оргтехники.
Третья таблица Товаров хранит информацию о товарах, где значение «vid» является показателем принадлежности товара к какому то каталогу, если 1 - к компьютерам, 2 - оргтехнике.
Далее следует талица «tovar_zakaz» она представляет собой таблицу заказов, объединяющей между собой заказчика и товары которые он заказал. В ней указывается количество указанного товара и ее сумма.
Пятая таблица пользователей необходима для контроля входа пользователей в панель администрирования и в менеджерскую. Также в случае когда «tip» равен 1,то есть пользователь является менеджером, его данные используются для связи с заказчиком, что позволяет контролировать выполнение заказа более автономно.
Шестая таблица является временной, то есть она создается в самом сайте при создании сессии, то есть при входе на сайт в первый раз. Это позволяет создавать временную корзину на случай если пользователь решит не заказывать, данные с корзины будут удалены. В обратном случае - данные будут переписаны в таблицу с заказами, и также таблица будет уничтожена.
Последняя таблица «zakaz» представляет собой набор заказчика, «id» данной таблицы является номером заказа и последующем номером счета. Здесь также указана дата заказа, которая задается автоматически в php, значение которого равно текущему числу, что очень удобно при контролировании заказа. Поле «status» указывает статус заказа: выполнен (после того как товар отгружен покупателю и все требования выполнены), выполняется (после того как менеджер резервирует данный заказ и начинает работать над его осуществлением), отменен (временное помещение заказа в хранилище, по каким либо причинам), прибыл (когда заказчик осуществил заказ, но его еще не обработали).
Данная таблица связывается с таблицей менеджеров (пользовательская таблица) по уникальному коду менеджера.
Схематически связи всех существующих таблиц мы рассмотрим далее.
3.3 Схема базы данных
Рисунок 1 - Структурная схема базы данных «comp»
3.4 SQL запросы на создание таблиц
В phpMyAdmin сформируем экспорт SQL и получаем следующий дамп базы данных в виде структур рассмотренных ранее таблиц:
-- БД: `comp`
- Структура таблицы `razd`
--
CREATE TABLE `razd` (
`id` int(11) NOT NULL auto_increment,
`nazv` varchar(50) NOT NULL default '',
`por` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=45 ;
-- Структура таблицы `razd2`
CREATE TABLE `razd2` (
`id` int(11) NOT NULL auto_increment,
`nazv` varchar(50) NOT NULL default '',
`por` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=43 ;
-- Структура таблицы `tovar`
CREATE TABLE `tovar` (
`id` int(11) NOT NULL auto_increment,
`vid` int(11) NOT NULL default '0',
`nazv` varchar(250) NOT NULL default '',
`foto` varchar(250) NOT NULL default '',
`opisanie` text NOT NULL,
`zena` float NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=845 ;
-- Структура таблицы `tovar_zakaz`
CREATE TABLE `tovar_zakaz` (
`id` int(11) NOT NULL auto_increment,
`id_zakaz` int(11) NOT NULL default '1',
`id_tovar` int(11) NOT NULL default '1',
`kol` int(11) NOT NULL default '0',
`summa` float NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=41 ;
-- Структура таблицы `user`
CREATE TABLE `user` (
`id` int(11) NOT NULL auto_increment,
`tip` int(11) NOT NULL default '1',
`login` varchar(50) NOT NULL default '',
`fio` varchar(50) NOT NULL default '',
`email` varchar(50) NOT NULL default '',
`pass` varchar(10) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=13 ;
-- Структура таблицы `zak`
CREATE TABLE `zak` (
`id` int(11) NOT NULL auto_increment,
`id_tovar` int(11) NOT NULL default '0',
`nazv` varchar(20) NOT NULL default '',
`firma` varchar(10) NOT NULL default '',
`foto` varchar(50) NOT NULL default '',
`opisanie` text NOT NULL,
`zena` float NOT NULL default '0',
`kol` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;
-- Структура таблицы `zakaz`
CREATE TABLE `zakaz` (
`id` int(11) NOT NULL auto_increment,
`FIO` varchar(50) NOT NULL default '',
`tel` varchar(15) NOT NULL default '',
`email` varchar(15) NOT NULL default '',
`data` date NOT NULL default '0000-00-00',
`status` varchar(15) NOT NULL default 'поступил',
`id_men` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=25 ;
4. Назначение скриптов
Начнем рассмотрения скриптов с главной страницы сайта. С запуском первого файла php, то есть …apogey/www/index.php, запускается скрипт, в котором начинается сессия, и в случае если пользователь вошел на сайт в первый раз, то удаляется и затем создается таблица «zak»:
<?php session_start();
if (isset($_SESSION['dat'])) {
$_SESSION['dat']=$_SESSION['dat']."a"; }
else { $_SESSION['dat']="a"; require_once("connect.php");
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
$sql="DROP TABLE `zak`";
$datu=mysql_query($sql);
$sql="CREATE TABLE `zak` (
`id` int(11) NOT NULL auto_increment,
`id_tovar` int(11) NOT NULL default '0',
`nazv` varchar(20) NOT NULL default '',
`firma` varchar(10) NOT NULL default '',
`foto` varchar(50) NOT NULL default '',
`opisanie` text NOT NULL,
`zena` float NOT NULL default '0',
`kol` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;";
$daty=mysql_query($sql);} ?>
Как видим данный скрип использует файл connect.php, который является файлом соединяющимся с MySQL и базой данных (данный файл используется во всех скриптах, связанных с базой данных):
<?php $sqlhost="localhost"; $sqluser="root";
$sqlpass=""; $db="apogey";
mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL Ошибка!".mysql_error());
mysql_select_db($db) or die("Не возможно считывание данных".mysql_error());
?>
Далее скрипты осуществляют отображение того или иного файла php, что позволяет по отдельности исправлять и видеть ошибки. Отображение файла folder/start.php:
<?php require_once("folder/start.php"); ?>
Данный файл также содержит в себе скрипт, выполняющий работу с таблицей каталогов и отображающей в табличном виде последовательность наименований каталогов:
<?php require_once("connect.php");
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
$sql="SELECT id,nazv,vid,por FROM razd where vid=0 order by por";
$data=mysql_query($sql);
while ($row=mysql_fetch_row($data))
{echo "<a href='?id=0&fid=".$row[0]."'>".$row[1]."</a>";}
?>
Появляется кнопка «Входа» в случае верного пароля и логина, которая переходит в http://localhost/Tools/apogey/www/meneger/?act=new&id=№менеджера в случае с менеджером и http://localhost/Tools/apogey/www/admin/?1 в случае с администратором:
<? $link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL Ошибка!".mysql_error());
$sql2="SELECT id,login,pass,tip FROM user where tip=1";
$data2=mysql_query($sql2);
while ($line2=mysql_fetch_row($data2))
{ if (($line2[1]==$_POST['name']) and ($line2[2]==$_POST['pass'])) {
echo "<form action='http://localhost/Tools/apogey/www/meneger/?act=new&id=".$line2[0]."' method='post'>
<input type='submit' value='Вход;'>
</form>";} }
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL Ошибка!".mysql_error());
$sql2="SELECT id,login,pass,tip FROM user where tip=2";
$data2=mysql_query($sql2);
while ($line2=mysql_fetch_row($data2))
{ if (($line2[1]==$_POST['name']) and ($line2[2]==$_POST['pass'])) {
echo "<form action='http://localhost/Tools/apogey/www/admin/?1' method='post'>
<input type='submit' value='Вход;'>
</form>";} } ?>
Следующий скрипт файла index.php отображает в ссответствии с выбранным пунктом меню файлы:
<?php
if (($_SERVER['REQUEST_URI']==$_SERVER ['PHP_SELF']. "?id=".$_GET['id']) or
($_SERVER['REQUEST_URI']==$_SERVER ['PHP_SELF']."?id=2") or
($_SERVER['REQUEST_URI']==$_SERVER ['PHP_SELF']."?id=".$_GET['id'])){
require_once("catalog/index.php");}
}?>
Следующий файл из предыдущего скрипта это catalog/index.php, который имеет большое число скриптов, так как он отображает каталоги и в то же время таблицу товаров, заказов с ссылками в корзину.
Начало массива базы данных:
<? require_once("connect.php");
$sql="SELECT id,vid,nazv,firma,foto,opisanie,zena FROM tovar";
$dat=mysql_query($sql);
while ($lin=mysql_fetch_row($dat)){
if ($lin[1]==$_GET['fid'])
{?>
Ячейка отображающая фотографию и ссылка но фото в отдельном коне:
<?php
echo '<a href="http://localhost/Tools/apogey/www/foto/'.$lin[4].'" target="_blank"><img src="http://localhost/Tools/apogey/www/foto/'.$lin[4].'" border=1 width=60></a>';
?>
Скрипт ячейки названия и описания:
<?php echo '<td valign="top"><b><font style="font-size:11px;">'.$lin[2].'</font></b><br>'.$lin[5].'</td>';
?>
Скрипт ячейки цены:
<?php if (trim($lin[6]) && $lin[6]>0)
{ echo $lin[6]; }
else
{ echo "<p>iia caeac</p>"; }
?>
Кнопка для перехода в таблицу с заказами:
<?php echo
"<form action='http://localhost/Tools/apogey/www/?id=2&fid=".$_GET['fid']."' method='post'><input style='width:100%' type='text' value='' style='width:100px' name='order_".$lin[0]."'>";?>
Закрытие массива и условий: <? }}} ?>
Условие для таблицы заказа уже следующий файл korzin.php, подключение к временной таблице базы данных и ее заполнение:
<?php
if ($_GET['id']==2) {
require_once("connect.php");
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
$sqql="SELECT vid,id,nazv,firma,foto,opisanie,zena FROM tovar WHERE vid=".$_GET['fid']; $roww=mysql_query($sqql);
while ($liene=mysql_fetch_row($roww))
{ if (($_POST['order_'.$liene[1]]!=""))
{$sqll="INSERT INTO zak (id,nazv,firma,foto,opisanie,zena,kol,id_tovar)
VALUES ('','".$liene[2]."','".$liene[3]."','".$liene[4]."','".$liene[5]."','".$liene[6]."',
'".$_POST['order_'.$liene[1]]."','".$liene[1]."');";
$rowy=mysql_query($sqll); }} ?>
Создание ссылки для перехода в таблицу каталога, чтобы продолжить набирать заказы:
<?php require_once("connect.php");
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
$sqll="SELECT vid,id,nazv FROM razd";
$roww=mysql_query($sqll);
while ($lne=mysql_fetch_row($roww))
{ if ($lne[1]==$_GET['fid'] ){
?>"document.location.href='http://localhost/Tools/apogey/www/?id=0&fid=<? echo $lne[0]; ?>'" value="I?iaie?eou auai?" />
<? }}?>
Выбор временной таблицы заказа для отображения ее данных, подсчет суммы:
<? require_once("connect.php");
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
$siql="SELECT id,nazv,firma,foto,opisanie,zena,kol FROM zak";
$rowu=mysql_query($siql);
$summa=0;
while ($arry = mysql_fetch_array($rowu))
{ $summa=$summa+$arry[5]*$arry[6]; ?>
Отображение ячейки фотографии товара с ссылкой на фото:
<?php
if (trim($arry[3]))
{ echo '<a href="http://localhost/Tools/apogey/www/foto/'.$arry[3].'" target="_blank"><img src="http://localhost/Tools/apogey/www/foto/'.$arry[3].'" border=1 height=30></a>'; }
else {
echo ' '; }
?>
Скрипт для отображения названия и описания товара:
<?= $arry[1] ?></b><br><?= $arry[4] ?></td>
<td align="center">
Скрипт для ячейки количество:
<?= $arry[6] ?>
Cкрипт ячейки таблицы корзины цена:
<?php if(trim($arry[5]) && $arry[5]>0)
{ echo $arry[5];
}?>
Последний скрипт данной таблицы:
<?php echo"<a href='del.php?id=".$arry[0]."&fid=".$_GET['fid']."'>Убрать</a>";?>
Отображение итоговой суммы:
<? echo $summa ?>
Переход к каталогу для продолжения заказа:
<?php echo "<form action='zakaz.php?id=0&fid=".$_GET['fid']."' method='post'>"; ?>
При удалении товара с корзины открывается файл del.php, а при отправке заказа zakaz.php. У удаления скрипт следующий:
<?php
require_once("connect.php");
$sSQL="DELETE FROM zak WHERE id=".$_GET['id'];
mysql_query($sSQL) or die(mysql_error());
echo
"<form action='http://localhost/Tools/apogey/www/?id=0&fid=".$_GET['fid']."' method='post'>
<input type='submit' value='OK'>
</form>";?>
У отправки заказа, который осуществляет также проверку на наличие незаполненных обязательных полей и выводит сообщение:
<?php
if (($_POST['fio']!="") and ($_POST['phone']!="") and ($_POST['email']!="")) {
require_once("connect.php");
$linka=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
$ql="INSERT INTO zakaz (id,FIO,tel,email,data,dost,bank)
VALUES ('','".$_POST['fio']."','".$_POST['phone']."','".$_POST['email']."','".date('y-m-d')."','".$_POST['browser']."','".$_POST['select']."')";
$rut=mysql_query($ql); $sqql="SELECT id_tovar,zena,kol FROM zak";
$roww=mysql_query($sqql); $ql="SELECT id FROM zakaz";
$rut=mysql_query($ql); $ln=mysql_fetch_row($rut);
while ($ln=mysql_fetch_row($rut)) { $s=$ln[0];}
while ($liine=mysql_fetch_row($roww)) {
$qll="INSERT INTO tovar_zakaz (id,id_tovar,id_zakaz,summa,kol)
VALUES ('','".$liine[0]."','".$s."','".$liine[1]*$liine[2]."','".$liine[2]."')";
$rut=mysql_query($qll);}
echo
"<form action='http://localhost/Tools/apogey/www/?id=0&fid=".$_GET['fid']."' method='post'>
<input type='submit' value='OK'>";
В случае отправки заказа: таблица корзины уничтожается и создается заново:
require_once("connect.php");
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
$sql="DROP TABLE `zak`"; $datu=mysql_query($sql);
$sql="CREATE TABLE `zak` ( `id` int(11) NOT NULL auto_increment,
`id_tovar` int(11) NOT NULL default '0', `nazv` varchar(20) NOT NULL default '',
`firma` varchar(10) NOT NULL default '', `foto` varchar(50) NOT NULL default '',
`opisanie` text NOT NULL, `zena` float NOT NULL default '0',
`kol` int(11) NOT NULL default '0', PRIMARY KEY (`id`))
ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;";
$daty=mysql_query($sql);
?> <?php } else { echo
"<form action='http://localhost/Tools/apogey/www/?id=22&fid=".$_GET['fid']."' method='post'> <input type='hidden' name='d' value='ok'>
<input type='submit' value='OK'>";?>
С этим и закончились скрипты каталога.
При осуществлении поиска по каталогу, запускается файл search.php, которая отображает товар и каталоги также как и до этого, только с запросами введенного в поле поиска.
Более подробно об остальных скриптах можно просмотреть в приложении курсовой работы. Которая представлена с подробным разъяснением кода.
5. Описание интерфейса
5.1 Интерфейс сайта
Сайт запускается по ссылке http://localhost/comp. Появляется главное окно, где мы видим слева список каталога и возможность входа с вводом пароля, также возможгность поиска.
Рисунок 2 - Главное меню сайта
При щелчке по каталогу компьютеров, то есть по любому из перечисленных наименований каталога происходит переход в страничку, где в центре отображается список товаров данного каталога.
Рисунок 3 - Каталог товаров «Системные блоки»
Если пройти по любому из предложенных каталогов оргтехники, получим такой же подобный каталог товара.
Рисунок 4 - Каталог товара «Принтеры»
Где можно указывать количество желаемой продукции и перейти к форме заказа.
Рисунок 5 - Заказ товара
интернет магазин товар оплата
Как видно в данном окне есть возможность поиска, которая выводит результат поиска по каталогу товаров.
Рисунок 6 - Результат поиска по параметру «canon»
При входе в административную или менеджерскую часть открывается следующее окно со следующим запросом:
Рисунок 7 - Запрос ввода пароля
5.2 Интерфейс менеджера
Рассмотрим интерфейс менеджера. При входе в систему под менеджером появляется страничка с новыми заказами.
Рисунок 8 - Страничка менеджера
Выбирая два оставшихся пункта меню: мои заказы, выполненные заказы, появляется такое же окно, что и начальная только таблица содержит другие данные.
При переходе по ссылке заказчик появляется список всевозможных заказчиков, с их данными.
Рисунок 9 - Заказчики
При щелчке на исполнителе появляются все менеджеры данной организации, эта возможность позволяет передать заказ другому менеджеру.
Рисунок 10 - Менеджеры
Также возможна смена статуса заказа, но при выборе пункта выполняется, другие менеджеры не могу отслеживать данный заказ.
Рисунок 11 - Смена статуса заказа
При просмотре открывается окно заказа и можно увидеть все наименования и количества данного заказа.
Рисунок 12 - Окно счета
5.3 Интерфейс администратора
Администратор также как и менеджер входит в систему, вводя пароль. Первое окно, которое открывается, отображает список каталога компьютеров, которые он может удалять, добавлять, удалять и просматривать их содержимое.
Рисунок 13 - Главное окно административной части
В следующем рисунке представлен пример редактирования окна, он аналогичен окну добавления, не только каталогу но и другого рода информации (товары, пользователи), рассматриваемой далее.
Рисунок 14 - Редактирование каталога
Следующее окно аналогична со всеми другими окнами удаления, она отображает окно удаление товара.
Рисунок 15 - Удаление товара
Далее расммотрим пункт просмотра содержимого каталога, при выборе которого открывается каталог товаров с возможностью удаления и редактирования.
Рисунок 16 - Каталог товаров
Добавлять товар в подкаталоги можно нажав на плюсик расположенный в каталогах компьютера и оргтехники там где необходимо пополнить товар, так появляется следующее окно, используя который мы можем добавлять .csv файл, подготовленный заранее.
Рисунок 17 - Добавление товара в каталог
Последним пунктом меню является «пользователи», в которой указана таблица пользователей входящих в систему с паролем (то есть менеджеры и администраторы).
Рисунок 18 - Пользователи сайта
Пунк «Добавить каталог» добавляет каталог для компьютеров и оргтехники, который выбирается из выпадающего списка и пишется название. Выглядит следующим образом:
6. Тесты для проверки работоспособности системы
6.1 Тестирование системы покупателя
Переход по пункту меню
1. Нажимаем на пункт меню (Каталога и на главную).
2. В середине страницы отображается соответствующее значение, а именно: Каталоги товаров и информация главной страницы.
3. Все перечисленные пункты выполняются
Поиск по каталогу
1. Вводим параметр поиска, например, canon.
2. Нажимаем enter.
3. Открывается окно с результатом, где отображены список каталогов, где содержаться списки товаров в соответствующей таблице.
4. Все параметры содержат данное слово, отсюда тест выполняется
Авторизация пользователей
1. Нажимаем вход
2. Ввод логина и пароля.
3. Нажатие кнопки Ок.
4. Попадаем в соответствующее для пользователя место (менеджер - в панель менеджера, администратор - в панель администрирования).
5. Выполнение всех пунктов.
Переход в каталог из таблицы товара
1. Нажимаем кнопку перехода в каталог.
2. Переход в каталог с содержанием подкаталога, куда входил данный перечень товаров - условие выполняется.
Добавление товара в корзину
1. Вводим количество.
2. Нажимаем enter или кнопку заказа.
3. Вывод в таблице корзины товара с указанным количеством - пункты выполняются.
Работа кнопки «Продолжить выбор»
1. Нажимаем кнопку в корзине заказа «продолжить выбор».
2. Переходим в каталог продукции - выполняется.
Убрать заказ
1. Выбираем убрать товар в корзине.
2. Товар успешно удален - выполняется.
Способ оплаты и доставки
1. Выбираем способ оплаты через любой банк.
2. Выбираем с доставкой.
3. Получаем результат.
4. Производим вычисление вручную.
5. Сравниваем результаты - верно.
Отправление заказа без введения обязательных полей
1.Нажимаем кнопку отправления заказа.
2. Выводит сообщение об ошибке.
Отправление заказа с заполненными обязательными полями
1.Заполняем информацию.
2. Нажимаем кнопку отправить заказ.
3. выводится сообщение об отправке.
4. Таблица корзины очищается - выполняется.
6.2 Тестирование системы менеджера
Пункт меню «новые заказы»
1.Щелкаем по пункту меню новые заказы.
2. Отображаются только те заказы, которые имеют статус прибыл - выполняется.
Пункт меню «Мои заказы»
1. Щелкаем по пункту меню мои заказы.
2. Выводятся те заказы, которые относятся к данному менеджеры и имеют статус выполняется - условие осуществляется.
Пункт меню «Выполненные заказы»
1. Щелкаем пункт меню выполненные заказы.
2. Выводятся все выполненные заказы - осуществляется.
Изменение статуса заказа
1. Выбираем статус.
2. Открывается окно изменение статуса.
3. Выбираем статус.
4. Заказу присваивается данный статус - выполняется.
6.3 Тестирование системы администратора
Добавление, изменение и удаление новости, каталога и пользователя
1. Нажимаем соответствующую кнопку.
2. Открывается окно добавления (с пустыми ячейками), изменения (с заполненными ячейками) и удаления (с неизменяемыми ячейками).
3. Выполнение добавления, изменения и удаления - все условия вуполняются.
Вход в таблицу товаров
1.Нажимаем вход.
2. Открывается окно товаров - выполнено.
Добавление товара
1. Щелкаем по плюсику.
2. Появляется окно, в котором вбираем путь к файлу csv.
3. Нажимаем отправку.
4. Все значения добавлены - выполняется.
Вывод
В данной программе (сайте) все требования были выполнены.
Список использованных источников
1. Шкрыль А.А., PHP - это просто. Программируем для web-сайта. - СПб.: БХВ-Петербург, 2007.
2. Бардзелл Джеффри, Macromedia Dreamweaver 8 с ASP, ColdFusion и PHP. Из первых рук.: пер с англ. - ЭКОМ Паблишерз, 2007.
3. Васвани Викрам, Полный справочник по MySQL.: пер с англ. - М.: Издательский дом «Вильямс», 2006.
4. Уэнц Кристиан, JavaScript. Карманный справочник.: Пер с англ. - М.: ООО «И.Д. Вильямс», 2007.
Приложение
Исходный текст программ
Index.php
<?php session_start();
if (isset($_SESSION['dat'])) {
//начало сессии
$_SESSION['dat']=$_SESSION['dat']."a";
}
else
{ header('location:index.php');
$_SESSION['dat']="a"; //если сессия только началась создается таблица zak
require_once("connect.php"); // соединение с базой данных используя след файл
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
//для нормального отображения текста базы данных выбираем соответствующую кодировку браузера
$sql="DROP TABLE `zak`";
$datu=mysql_query($sql); // создание базы данных
$sql="CREATE TABLE `zak` (
`id` int(11) NOT NULL auto_increment,
`id_tovar` int(11) NOT NULL default '0',
`nazv` varchar(20) NOT NULL default '',
`firma` varchar(10) NOT NULL default '',
`foto` varchar(50) NOT NULL default '',
`opisanie` text NOT NULL,
`zena` float NOT NULL default '0',
`kol` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;";
$daty=mysql_query($sql);}
// создания отображения верхней части странички, то есть не изменяемой информации
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!-- DW6 -->
<head>
<!-- Copyright 2005 Macromedia, Inc. All rights reserved. -->
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Магазинчик</title>
<link rel="stylesheet" href="2col_leftNav.css" type="text/css" />
</head>
<!-- The structure of this file is exactly the same as 2col_rightNav.html;
the only difference between the two is the stylesheet they use -->
<body>
<div id="masthead"><table width=100%><tr><td align="left">
<h1 id="siteName">Продажа компьютора и оргтехники</h1> </td><td align="right"><img align="middle"src="1.jpg" width="100" height="70" /></td></tr></table>
</div>
<!-- end masthead -->
<div id="content">
<?php if (($_SERVER['REQUEST_URI']==$_SERVER ['PHP_SELF'])) {
//отображение главной странички
?>
<h2 id="pageName">Главная</h2>
<div class="feature"><img src="2.jpg" width="280" height="200" />
<h3>О фирме</h3>
<p align="justify"> Интернет магазин компьютеров и оргтехники рад приветствовать вас на своей торговой площадке. Если вас интересует продажа компьютеров, продажа ноутбуков, а также продажа компьютерных комплектующих, мы поможем вам сделать правильный выбор. Наш магазин оргтехники имеет широкий ассортимент и приемлемые цены, и вас порадует быстрая и в срок доставка компьютерных товаров.</p>
</div>
<div class="story">
<h3>Из истории</h3>
<p align="justify"> Торговая сеть «Компьютика» создана в 1993 году. На сегодняшний день «Компьютика» является одним из лидеров российского рынка БТиЭ, занимая долю 9%.</p>
<p align="justify">За счет постоянной оптимизации ассортимента, внедрения современных логистических и информационных технологий, оптимизации взаимоотношений с поставщиками, а также благодаря использованию эффективных маркетинговых и рекламных средств в 2006 году торговая сеть достигла самых высоких темпов развития в отрасли -- порядка 69%в год.</p>
<p align="justify">В основе безупречной репутации бренда «Компьютика» лежат мировые стандарты организации торгового процесса, клиентоориентированный сервис, широчайший выбор качественных товаров и услуг и доступный уровень цен в современных гипермаркетах сети. </p>
</div>
<?php } else {
// отображение каталогов товара
if (($_SERVER['REQUEST_URI']==$_SERVER ['PHP_SELF']."?id=".$_GET['id']) or
($_SERVER['REQUEST_URI']==$_SERVER ['PHP_SELF']."?id=2") or
($_SERVER['REQUEST_URI']==$_SERVER ['PHP_SELF']."?id=".$_GET['id'])){
require_once("catalog/index.php");}
}?>
</div>
<!--end content -->
<div id="navBar">
<div id="search">
<?php
//форма поиска
echo "<form action='search.php' method='post'>"; ?>
<label>Поиск</label>
<input name="searchFor" type="text" size="20" />
<input type="submit" value="поиск" />
</form>
</div>
<div class="relatedLinks">
<a href='index.php'>Главная</a>
<h3>Компьютеры</h3>
<ul>
<?php
//каталог компьютеров
require_once('folder/razd.php'); ?>
</ul>
</div>
<div class="relatedLinks">
<h3>Оргтехника</h3>
<ul>
<?php
//каталог оргтехники
require_once('folder/razd2.php');
//кнопки входа
?>
</ul>
</div>
<div id="advert"> <form action="admin/pass.php">
<input type="submit" value="Вход как админ" />
</form>
<form action='meneger/pass.php' />
<input type="submit" value="Вход как менеджер" />
</form></div>
</div>
<!--end navbar -->
<div id="siteInfo">©2009 Компьютика</div>
<br />
</body>
</html>
Connect.php (во всех папках)
<?php //подключение к MySQL и к базе данных
$sqlhost="localhost";
$sqluser="root";
$sqlpass="";
$db="comp";
mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL error!".mysql_error());
mysql_select_db($db) or die("bd error".mysql_error());
?>
Search.php
<? require_once("connect.php");
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ошибка!".mysql_error());
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
// фильтр по названию товара из таблицы товара в соотвестствии с введенными в ячейку данных
$sql="SELECT id,nazv,opisanie,zena,foto FROM tovar where nazv LIKE '%".$_POST['searchFor']."%'";
$data=mysql_query($sql);
while ($lin=mysql_fetch_row($data)){
// вывод результата по таблице товра в таблицу
?>
<table cellSpacing=0 cellPadding=2 width="99%" border=6 class=goods><tr><td>
<?php
echo '<font style="font-size:11px;"><b>'.$lin[1].'</b><br><table width=50%><tr><td align="centre"><a href="foto/'.$lin[4].'" target="_blank"><img src="foto/'.$lin[4].'" border=1 width=150></a></td>';
echo '<td width=240>'.$lin[2].'</td></tr></table></font><br><br><table width=100%><tr><td><b>Цена: </b>';
?>
<?php
if (trim($lin[3]) && $lin[3]>0)
{
echo $lin[3].'руб.';
}
else
{
echo "<p>под заказ</p>";
}?>
<?php
echo "</td><td><form action='index.php' method='post'><input type='text' value='' style='width:100px' name='order_".$lin[0]."'>";?>
<input type="submit" name="add_order" style="font-size:10px;" id=add_order value="Добавить в заказ"></form></tr></table></td><? }?></tr><tr>
<?
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ошибка!".mysql_error());
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
// фильтр по описанию товара из таблицы товара в соотвестствии с введенными в ячейку данных
$sql="SELECT id,nazv,opisanie,zena,foto FROM tovar where opisanie LIKE '%".$_POST['searchFor']."%'";
$data=mysql_query($sql);
while ($lin=mysql_fetch_row($data)){
?>
<table cellSpacing=0 cellPadding=2 width="99%" border=6 class=goods><tr><td>
<?php
echo '<font style="font-size:11px;"><b>'.$lin[1].'</b><br><table width=50%><tr><td align="centre"><a href="foto/'.$lin[4].'" target="_blank"><img src="foto/'.$lin[4].'" border=1 width=150></a></td>';
?>
<?php
echo '<td width=240>'.$lin[2].'</td></tr></table></font><br><br><table width=100%><tr><td><b>Цена: </b>';
?>
<?php
if (trim($lin[3]) && $lin[3]>0)
{echo $lin[3].'руб.';
}
else
{echo "<p>под заказ</p>";
}?>
<?php
echo "</td><td><form action='index.php' method='post'><input type='text' value='' style='width:100px' name='order_".$lin[0]."'>";?>
<input type="submit" name="add_order" style="font-size:10px;" id=add_order value="Добавить в заказ"></form></tr></table>
</td><? }?></tr><tr><?
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ошибка!".mysql_error());
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
$sql="SELECT nazv,opisanie,zena,foto,id FROM tovar where zena LIKE '%".$_POST['searchFor']."%'";
$data=mysql_query($sql);
while ($lin=mysql_fetch_row($data)){
?>
<table cellSpacing=0 cellPadding=2 width="99%" border=6 class=goods><tr><td>
<?php
echo '<font style="font-size:11px;"><b>'.$lin[0].'</b><br><table width=50%><tr><td align="centre"><a href="foto/'.$lin[3].'" target="_blank"><img src="foto/'.$lin[3].'" border=1 width=150></a></td>';
echo '<td width=240>'.$lin[1].'</td></tr></table></font><br><br><table width=100%><tr><td><b>Цена: </b>';
if (trim($lin[2]) && $lin[2]>0)
{echo $lin[2].'руб.';
}else{
echo "<p>под заказ</p>";
echo "</td><td><form action='index.php' method='post'><input type='text' value='' style='width:100px' name='order_".$lin[4]."'>";?>
<input type="submit" name="add_order" style="font-size:10px;" id=add_order value="Добавить в заказ"></form></tr></table>
</td><? }?>
</tr></table><?php
echo "<br><br>";
echo "<form action='index.php' method='post'>
<input type='submit' value='OK'>
</form>"
?>
Foldr/razd.php
<?php //отображение списка названия каталогов из таблицы razd компьютеров
require_once("connect.php");
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
$sql="SELECT id,nazv,vid,por FROM razd where vid=0 order by por";
$data=mysql_query($sql);
while ($row=mysql_fetch_row($data))
{ echo "<a href='?id=0&fid=".$row[0]."'>".$row[1]."</a>";}
?>
Foldr/razd2.php
<?php //отображение списка названия каталогов из таблицы razd2 оргтехники
require_once("connect.php");
$link=mysql_connect($sqlhost, $sqluser, $sqlpass) or die("MySQL ioeaea!".mysql_error());
Подобные документы
Проектирование книжного интернет-магазина для реализации книжной продукции через Интернет. Анализ и обоснование выбора языков программирования и средств разработки сайта. Затраты внедрение сайта, его программное обеспечение, тестирование и отладка.
дипломная работа [2,1 M], добавлен 06.06.2013Основные цели создания Интернет-магазина по продаже спортивного питания. Исследование свойств и характеристик информационного ресурса. Разработка дизайна сайта. Структуризация семантического ядра. Автоматизация процесса оплаты товаров покупателем.
курсовая работа [2,1 M], добавлен 22.05.2015Проект реализации интерфейса для продажи автошин. Составляющие маркетингового плана веб-сайта. Общий результат формулировки основных запросов. Планирование бюджета контекстной рекламы. Затраты на создание сайта, ежемесячная общая стоимость продаж.
курсовая работа [1,8 M], добавлен 01.03.2015Методика разработки интернет-магазина, предназначенного для продажи комплектующих для компьютеров через интернет. Организация удобной и эффективной информационной и сервисной поддержки клиентов и партнеров. Особенности и правила демонстрации товаров.
дипломная работа [1,2 M], добавлен 11.01.2015Анализ выбора средств разработки и создания сайта интернет-магазина спортивных товаров с функцией форума. Информационное, программное и техническое обеспечение веб-сайта. Сущность основ программирования на языке PHP. Принципы работы с базой данных.
дипломная работа [2,4 M], добавлен 12.12.2013CRM-системы: разновидности, проблемы реализации, их преимущества и недостатки. Критические характеристики CRM-систем для работы через Интернет (WEB-CRM). Разработка содержания и структуры WEB-сайта интренет-магазина "Vinil", создание схемы и базы данных.
курсовая работа [2,6 M], добавлен 19.05.2013Создание интернет-магазина, направленного на продажу веселящего газа. Реализация возможности добавления выбранного товара в корзину, отправки заказа. Описание разделов сайта. Программа и методика испытаний. Проверка работоспособности интернет-магазина.
курсовая работа [3,3 M], добавлен 14.12.2013Разработка электронного представительства "Магазина цветов Флориэль" с размещением в сети Интернет. Раскрытие функциональных возможностей веб-сервера по настройке содержания сайта через управление контентом и обеспечение обратной связи с пользователями.
курсовая работа [2,1 M], добавлен 21.10.2014Преимущества и недостатки электронной коммерции. Описание локального сервера Denwer. Структура файлов и папок. Особенности PHP, MySQL, CSS, HTML. Разработка структуры сайта интернет-магазина по продажи гитар и комплектующих, его программная реализация.
курсовая работа [5,0 M], добавлен 25.10.2014Анализ сайта по детской психологии "Детская психология, воспитание детей". Форма представления информации на сайте, осуществление навигации. Список часто обсуждаемых вопросов. Основные категории психологических тестов. Особенности дизайна сайта.
реферат [16,3 K], добавлен 10.06.2011