I. Сдать все лабораторные работы (11).
II. Средствами РНР сделать сайт «Каталог бытовой техники»:
Этот Ý дизайн (цветовое решение) копировать не нужно!!! Придумайте свой вариант.
Но, обязательно, должно быть следующее:
1. В левом столбце сайта сверху это гиперссылки
Ниже идет поиск по фирме-производителю, т.е. при щелчке по соответствующей гиперссылке
2. Правый столбец сайта поиск по фирме-производителю, но уже строго в пределах
выбранной категории товаров
Внизу отображаются текущие день недели, число месяц и год (средствами РНР), а также курс доллара.
3. В среднем столбце сперва отображается некое приветствие (придумайте сами), а потом все товары выбранной категории. Если же был выполнен поиск по фирме-производителю в данной категории, то, соответственно, товары этой фирмы.
Здесь же предусмотреть возможность сортировки при отображении товаров как по названию модели (алфавитный/обратный к алфавитному порядок), так и по цене (по убыванию/возрастанию). Если стоит стрелка «вниз» т.е. по убыванию (файл down.gif из папки photo), то при щелчке по ней мышкой стрелка заменяется на противоположную «вверх» т.е. по возрастанию (файл up.gif из папки photo).
4. Для кажого товара приводится:
При щелчке мышки по фото должно открываться вспомогательное окошко с большой фотографией сделать средствами JavaScript.
Теперь как это все должно быть сделано.
Вся информация о товарах хранится в СУБД MySQL, в базе данных study, в таблице goods_NNN (где NNN первые 3-4 латинских буквы вашей фамилии, напр. goods_kov).
В этой таблице должны быть такие поля:
Заполненная таблица goods_NNN должна быть такой ß (кроме последнего столбца Файлы с фото его в таблице нет! Здесь он приведен только для справки). Значения поля id тоже могут быть другими.
id | category (категория) | code (код) |
firma (фирма) | model (модель) |
description (описание) | price (цена) | Файлы с фото |
---|---|---|---|---|---|---|---|
1 | frost {Тип: Холодильник} | ar1 | Ariston | MB 1167 NF | Высота: 167 Цвет: Белый Расположение морозильной камеры: Низ Количество компрессоров: 1 |
11556,00 | ar1.jpg, ar1-b.jpg |
2 | frost | ar2 | Ariston | MTA 1167 | Высота: 167 Цвет: Серебристый, Белый, Нержавеющая сталь Расположение морозильной камеры: Верх Количество компрессоров: 1 |
11485,00 | ar2.jpg, ar2-b.jpg |
3 | frost | el3 | Electrolux | ENB 3269 | Высота: 185 Цвет: Белый Расположение морозильной камеры: Низ Количество компрессоров: 1 |
11974,00 | el3.jpg, el3-b.jpg |
4 | frost | el4 | Electrolux | ERB 4199 | Высота: 200 Цвет: Нержавеющая сталь Расположение морозильной камеры: Низ Количество компрессоров: 2 |
27768,00 | el4.jpg, el4-b.jpg |
5 | frost | sa5 | Samsung | RT-29 BVMS | Высота: 156 Цвет: Серебристый Расположение морозильной камеры: Верх Количество компрессоров: 1 |
11441,00 | sa5.jpg, sa5-b.jpg |
6 | frost | sa6 | Samsung | RL-28DBSI | Высота: 175 Цвет: Серебристый Расположение морозильной камеры: Низ Количество компрессоров: 1 |
11495,00 | sa6.jpg, sa6-b.jpg |
7 | wash {Тип: Стиральная машина} | ar7 | Ariston | AVSD 109 S | Тип стиральной машины: Узкая Тип загрузки: Фронтальная Скорость отжима: 1000 Загрузка, (макс.): 5 Материал бака: Нержавеющая сталь Цвет: Серебристый |
11533,00 | ar7.jpg, ar7-b.jpg |
8 | wash | ar8 | Ariston | AV 102 | Тип стиральной машины: Полноразмерная Тип загрузки: Фронтальная Скорость отжима: 1000 Загрузка, (макс.): 5 Материал бака: Полиплекс Цвет: Белый |
11411,00 | ar8.jpg, ar8-b.jpg |
9 | wash | el9 | Electrolux | EWS 800 | Тип стиральной машины: Узкая Тип загрузки: Фронтальная Скорость отжима: 800 Загрузка, (макс.): 4 Материал бака: Карборан Цвет: Белый |
11423,00 | el9.jpg, el9-b.jpg |
10 | wash | el10 | Electrolux | EWF 1234 | Тип стиральной машины: Полноразмерная Тип загрузки: Фронтальная Скорость отжима: 1200 Загрузка, (макс.): 5 Материал бака: Карборан Цвет: Белый |
11557,00 | el10.jpg, el10-b.jpg |
11 | wash | sa11 | Samsung | WF-J1054 | Тип стиральной машины: Полноразмерная Тип загрузки: Фронтальная Скорость отжима: 1000 Загрузка, (макс.): 7 Цвет: Белый |
11414,00 | sa11.jpg, sa11-b.jpg |
12 | wash | sa12 | Samsung | S803J | Тип стиральной машины: Узкая Тип загрузки: Фронтальная Скорость отжима: 800 Загрузка, (макс.): 3.5 Материал бака: Пластик (композитный материал) Цвет: Серебристый, Золотой, Белый, Голубой, Перламутровый, Шампанское |
8331,00 | sa12.jpg, sa12-b.jpg |
13 | micro {Тип: Микроволновая печь} | ar13 | Ariston | MW 212 | Цвет: Чёрный, Белый Гриль: Есть Управление: механическое Объем камеры: 23 Конвекция: Нет |
8267,34 | ar13.jpg, ar13-b.jpg |
14 | micro | ar14 | Ariston | MWO 323 IX | Цвет: Нержавеющая сталь Гриль: Есть Управление: электронное Объем камеры: 30 Конвекция: Есть |
11675,00 | ar14.jpg, ar14-b.jpg |
15 | micro | el15 | Electrolux | EMS 2390 | Цвет: Серебристый, Белый Гриль: Есть Управление: Электронное Объем камеры: 23 Конвекция: Нет |
6197,00 | el15.jpg, el15-b.jpg |
16 | micro | el16 | Electrolux | EMM 1900 | Цвет: Серебристый Гриль: Нет Управление: механическое Объем камеры: 19 Конвекция: Нет |
2185,38 | el16.jpg, el16-b.jpg |
17 | micro | sa17 | Samsung | CE1190R | Цвет: Нержавеющая сталь Гриль: Есть Управление: Тактовое Объем камеры: 32 Конвекция: Есть |
6290,00 | sa17.jpg, sa17-b.jpg |
18 | micro | sa18 | Samsung | C106R | Цвет: Белый Гриль: Есть Управление: Сенсорное Объем камеры: 28 Конвекция: Есть |
6206,00 | sa18.jpg, sa18-b.jpg |
Значения в поле code скопируйте в точности мои, т.к. фактически это имена файлов
с фотографиями (маленькой и большой) каждого товара.
Сами фотографии находятся в папке photo
на сервере:
http://10.2.11.106/~studphp/photo/
Копировать из этой папки файлы не следует! В команде <img> нужно просто указать путь к файлам в виде src=/~studphp/photo/ar1.jpg и т.п.
Обратите внимание, что при отображении на экране описания товара строчка «Тип: ...» формируется в зависимости от значения поля category.
Все страницы сайта должны иметь единый дизайн, реализованный средствами CSS. А структура страницы это такие блоки:
Левое меню |
Категория Информация о товаре Информация о товаре |
Правое меню |
Скрипт, отображающий страницы каталога должен быть составным, т.е. иметь
примерно такой вид:
<?php
include("file-1.inc"); // задание стилей CSS
include("file-2.inc"); // подключение к базе данных
include("file-3.inc"); // вывод страницы каталога
include("file-4.inc"); // отключение от базы данных
?>
т.е. дизайн должен быть отделен от контента (содержания страниц)!!!
Если вы делаете сайт сперва на Денвере, то в файле подключения к базе данных обязательно предусмотрите строку с логином-паролем для сервера 10.2.11.106 (которую нужно закомментарить).
Помимо клиетской части (отображение страниц каталога) обязательно должна быть и администраторская часть (в виде html-форм), позволяющая как добавлять новые данные в таблицу goods_NNN, так и исправлять существующую информацию. В частности, для создания таблицы goods_NNN и ее заполнения исходными данными должен быть сделан отдельный скрипт.
Гиперссылку (открывающуюся в новом окне автоматически!) для входа в администраторскую часть сделайте «невидимой» (т.е. того же цвета, что и фон) в левом нижнем углу сайта наведите мышку на это место на образце сайта. А сам вход должен быть запаролен на основе http-аутентификации:
header("WWW-Authenticate: Basic realm=\"Вход в админ\"");