- Добавить в Избранное
-
Сделать стартовой
 
Содержание
Глава 1- 18
Как создаются Web-страницы
Основные принципы работы с Dreamweaver
Начинаем с текста
Рисунки,звуки,фильмы
Таблицы
Работа с Web-сайтом
Фреймы
Табличный дизайн
Использование шаблонов
Каскадные таблицы стилей
Свободно позиционируемые элементы
Анимация элементов Web-страниц
Использование сценариев
Метатегн и серверные директивы
Введение в серверное программирование
Формы
Простейшие серверные приложения
Создание интерактивных сайтов
На заметку
Установите на своем сайте нашу кнопку:

Вебмастеру - портал о редакторе Macromedia Dreamweaver MX. Создание сайтов.


    1  2  3  4  5  6    

Страница добавления записи
Давайте подумаем, что нам нужно сделать теперь, когда страница списка высказываний готова и работает?
Таблица Sentences , как вы уже заметили, девственно-пуста. (Отладочная запись, введенная нами в Access , не считается.) Нужно заполнить ее дан­ными. А для этого нам необходимо создать страницу добавления записи.
Создайте новую серверную страницу, введите в нее поясняющий текст и сохраните опять же в папке Admin под именем AddSentence.asp . Создайте в этой странице форму и назовите ее Sentence . Внутри формы создайте об­ласть редактирования и назовите ее content , не забудьте также о кнопке от­правки данных.
Что-то мы забыли... Ах, да! Нужно еще поместить в форму раскрывающийся список category и привязать его к набору записей categories . Но перед этим необходимо создать сам набор записей categories , из которого будут взяты пункты списка category . Задайте выборку всех записей таблицы Categories . После этого задайте сортировку записей по полю Name , для чего выберите это поле в раскрывающемся списке Sort диалогового окна Recordset . А раскрывающийся список, расположенный правее, позволит вам задать порядок сортировки записей: по возрастанию (пункт Ascending ) или по убыванию (пункт Descending ). Задав параметры набора данных, нажмите кнопку ОК.
Теперь можно создать поведение insert Record . (Как это делается, было описано в главе 17.) Привяжите область редактирования Content к полю Content таблицы Sentences , а список Category — к полю Category . В качестве страницы, на которую будет осуществлен переход после добавления записи, задайте Sentences.asp .
Сохраните готовую страницу AddSentence.asp . После этого откройте страни­цу Sentences.asp и поместите в нее гиперссылку, указывающую на страницу AddSentence.asp . Вот и все.
Теперь можете проверить созданную нами страницу добавления записи. Опубликуйте сайт на Web -сервере, откройте страницу Sentences.asp в Web -обозревателе и щелкните по гиперссылке "Добавить". Внесите в таблицу sentences несколько записей. Они нам пригодятся для отладки.
Страница изменения записи
Наряду с добавлением новых записей часто приходится изменять уже существующие. Давайте создадим страницу, с помощью которой можно изменять уже существующие в наборе записи.
Создадим новую страницу, введем в нее поясняющий текст и сохраним под именем EditSentence . asp в папке Admin . Здесь мы впоследствии создадим форму с элементами управления, предназначенными для правки значений полей выбранной нами записи. А пока закроем эту страницу — нас ждут другие дела.
Сейчас мы добавим на страницу Sentences.asp гиперссылку, ведущую на страницу изменения записи. Откройте страницу, поместите текстовый кур­сор в третью ячейку второй строки таблицы теперь вы поняли, зачем она нужна?) и наберите в ней слово "Изменить". Далее выделите это слово и наберите в поле ввода интернет-адреса редактора свойств такой текст:
EditSentence . asp ? ID =
Далее переключитесь в режим отображения кода и перетащите из панели Bindings в место, находящееся точно после знака "=", поле id набора запи­сей. Интернет-адрес гиперссылки примет такой вид:
EditSentence . asp ? ID =<%=( Sentences . Fields . Item (" ID "). Value )%>
Давайте выясним, что это значит. Код
Sentences.Fields.Item("ID").Value
извлекает значение поля id данной записи набора. Далее это значение помещается в гиперссылку, которая принимает вид:
EditSentence .а s р?10=<значение поля ID ">
и передается странице EditSentences . asp в качестве значения параметра ги­перссылки id . Поскольку значение поля id уникально для каждой записи набора (поле id — счетчик записей, как вы помните), страница EditSen ­ tences . asp может однозначно идентифицировать запись, которую вы хотите изменить, и заполнить значениями ее полей элементы управления формы, т. е. подготовить запись к правке.
Теперь сохраните страницу Sentences . asp и откройте только что созданную нами страницу EditSentence . asp . Пора заняться ей.
Для того чтобы отредактировать запись, нам понадобится форма. Создайте ее по аналогии со страницей AddSentence.asp . Никаких особенностей она иметь не будет, поэтому вы можете просто скопировать уже готовую форму со страницы добавления новой записи и вставить ее в страницу EditSentence.asp . Но перед этим создайте на этой странице набор данных Categories , также по аналогии со страницей AddSentence.asp .
Следующий шаг — создание набора записей, из которого будет взята запись для заполнения элементов управления созданной нами формы. Этот набор должен содержать одну-единственную запись, поэтому нам придется задать фильтр, отбирающий нужную запись. Она будет выбрана по значению поля счетчика id таблицы Sentences , которое должно равняться значению пара­метра гиперссылки id , переданному от страницы Sentences . asp (см. выше).
Чтобы создать фильтр, выберите название поля id в раскрывающемся спи­ске Filter диалогового окна Recordset , а в раскрывающемся списке, распо­ложенном правее, — пункт = (равенство значений поля и фильтра). Далее в списке, расположенном ниже, выберите пункт URL Parameter (параметр, переданный методом GET ), а в поле ввода, расположенном ниже и правее, введите имя этого параметра — id .
Далее нам нужно заполнить элементы управления формы соответствующими им значениями. Эти значения, как вы поняли, будут взяты из только что созданного нами набора записей. Для разных элементов управления дейст­вия будут различными, и мы их сейчас опишем.
Сначала выделите область редактирования и найдите в редакторе свойств кнопку с изображением молнии — она находится правее области редакти­рования Init Val . Щелкните по этой кнопке. На экране появится диалоговое окно Dynamic Data ; выберите в иерархическом списке Field пункт Content , соответствующий одноименному полю, и нажмите кнопку ОК. Все, теперь область редактирования получит значение из поля content набора записей.
С раскрывающимся списком все несколько сложнее. Выделите его и нажмите кнопку Dynamic . В появившемся на экране диалоговом окне Dynamic List / Menu щелкните кнопку с изображением молнии, расположенную правее поля ввода Select Value Equal To . После этого на экране опять же появится диалоговое окно Dynamic Data ; выберите в иерархическом списке Field пункт Category , соответствующий одноименному полю, и нажмите кнопку ОК. Теперь остается только нажать кнопку ОК окна Dynamic List / Menu .
Можно сделать еще проще — перетащить нужное поле из панели Bindings на соответствующий ему элемент управления. Автор рекомендует вам так и поступать в дальнейшем.
Теперь нужно создать поведение update Record , которое, собственно, и реализует заполнение формы и обновление значений полей редактируемой записи. Выберите пункт Update Record меню серверных поведений панели Server Behaviors . На экране появится диалоговое окно Update Record .
Выберите в раскрывающемся списке Connection базу данных, в списке Table То Update — таблицу, запись которой будет обновляться, а в списке Select Record From — набор записей, из которого будет взята запись для заполнения формы. В нашем случае это будет соответственно Library , sentences и Sentences (соответственно, одноименные таблица и набор записей).
В поле ввода Unique Key Column задается поле набора записей, по которому нужная нам запись будет однозначно идентифицироваться. В нашем слу­чае — это ключевое поле id . Если это числовое поле (а поле id — число­вое), включите флажок Numeric , в противном случае — отключите его.
В поле ввода After Updating , Go To вводится интернет-адрес страницы, на которую будет осуществлен переход после успешного изменения записи. Введите в него sentences.asp . Вы также можете щелкнуть кнопку Browse и выбрать нужную страницу в диалоговом окне Select File .В раскрывающемся списке Get Values From выбирается форма, из которой будут взяты значения для обновления записи.
В списке From Elements перечислены все элементы управления, находящиеся в выбранной форме. Вы можете выбрать любой из них и задать для него поле таблицы, куда будут помещены содержащиеся в нем данные, и тип отправляемых данных (текст, число, дата и т. п.).
Поле таблицы выбирается в раскрывающемся списке Column . Пункт < ignore > данного списка позволяет проигнорировать значение этого эле­мента управления (т. е. оно не будет помещено в поле таблицы).
Тип данных указывается в раскрывающемся списке Submit As . В нем доступны следующие пункты:
Text — текстовые данные;
Numeric — числовые данные;
Date — значение даты;
Date MS Access — значение даты, предназначенное для Microsoft Access ;
Checkbox Y , N — логическое значение, преобразуемое в символы " Y " ("да") или " N " ("нет");
Checkbox 1,0 — логическое значение, преобразуемое в числа 1 ("да") или 0 ("нет");
Checkbox -1,0 — логическое значение, преобразуемое в числа -1 ("да") или 0 ("нет");
Checkbox MS Access — логическое значение, предназначенное для Micro ­ soft Access .
Задав все нужные данные, не забудьте нажать кнопку ОК.
Сохраните готовую страницу EditSentence . asp и проверьте ее в действии. Для этого опубликуйте сайт на Web -сервере, откройте страницу Sentences.asp в Web -обозревателе и попробуйте отредактировать какое-либо высказывание. Если страница изменения записи почемуто не работает, проверьте, все ли правильно вы сделали.

    1  2  3  4  5  6   Вверх
Copyright©  Бронников М.В 2004г.
Все вопросы комментарии направляйте по адресу SWMR@narod.ru 
  Akavita
Хостинг от uCoz