Поддержка сайта

Высокие позиции в поисковой системе, на прямую зависят от развития вашего сайта.

Продвижение сайтов

Эффективность стратегий продвижения подтверждается сотрудничеством с крупными клиентами и отзывами о нашей работе.

Создание сайтов

Мы делаем сайты быстро, недорого и профессионально. От работы с нами, у вас останутся только положительные эмоции.

Установка значений атрибутов

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

Добавление атрибутов в базу данных

1. Для создания формы редактирования атрибутов измените страницу

admin/default.asp. Откройте ее и добавьте в описание пунктов меню:

 Установка значений атрибутов

2. При выборе редактируемого товара editproducts покажет список товаров в виде ссылок. Щелчок мыши на одной из ссылок откроет форму изменения информации об атрибутах. Введите в оператор Select Case страницы admin/default. asp:

 

 Установка значений атрибутов

Установка значений атрибутов

3. Затем в Select Case страницы admin/default.asp добавьте код, воспроизводящий форму редактирования атрибута:

 Установка значений атрибутов

Установка значений атрибутов

 

Работа предложенного кода похожа на действие кода вывода атрибутов в detail .asp: свойство Attributes объекта Product возвращает набор описаний атрибутов и значения типов соответствующих товаров. Однако в данном случае столбец Datatype используется для определения того, нужно ли выводить поле редактирования.

Результаты редактирования атрибутов необходимо сохранить в базе данных. Это можно сделать с помощью динамических форм в ASP. Большая часть форм ASP предназначена для сбора фиксированного набора данных. В нашем проекте это не так, поскольку разрешается изменять TypelD товара Gaggia Carezza. В общем случае мы можем получить совершенно иной набор атрибутов, поэтому форма будет иметь другой состав полей. Создадим код, который будет проверять и подтверждать допустимость данных для формы за счет адаптации структуры динамических атрибутов, хранящейся в базе данных.

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

4. Добавьте в верхнюю часть admin/default. asp (сразу за оператором If. . .Then) код проверки сохранения нового товара:

 Установка значений атрибутов

Значение StructurelD хранится в скрытом поле structureids нашей формы. Если форма содержит более одного поля, получается массив (хотя даже одно поле можно считать массивом). При сохранении формы мы перебираем массив идентификаторов. Получив идентификатор, перескакиваем на соответствующее поле данных, хранящееся в массиве values. Затем снова формируем массив, пользуясь тем же именем. При этом поле Boolean реализуется в виде select, а не флажка формы. Флажки странно ведут себя с массивами — если они не установлены, они не занимают места в массиве. Поля select и input не являются флажками, поэтому всегда формируют элемент массива, независимо от выбранного значения.

 

Читайте так же:
Not found

Нам доверяют

Интернет магазин