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

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


    1  2  3  4  5  6  7  8    

Создание набора данных
Но прежде чем приступим собственно к дизайну, нам нужно выполнить одно подготовительное действие — создать набор данных. Набор данных — это условие выборки данных с указанием таблиц и полей, из которых будут извлекаться данные. При этом также возможно задание фильтра — условия отбора данных из записей. После создания набора данных уже можно приступать к серверной странице, отображающей данные.
Для работы с наборами данных нам понадобится еще одна панель, не рассмотренная ранее, - Bindings . Чтобы вызвать эту панель на экран, включите пункт-выключатель Bindings меню Window или нажмите комбинацию клавиш < Ctrl >+< F10>.
Эта панель также состоит, в основном, из списка уже созданных к данному времени наборов данных. Изначально она, однако, содержит только нравоучительный текст, перечисляющий нерадивым Web -программистам шаги, которые они должны пройти перед тем, как смогут создать свой первый набор данных. Но мыто их уже прошли! Поэтому сразу же перейдем к созданию нашего первого набора данных.
Нажмите неизменную кнопку со знаком "плюс", находящуюся в этой панели, и выберите в появившемся на экране меню пункт Recordset ( Query ). Также вы можете нажать кнопку Recordset вкладки Application панели объектов или выбрать пункт Recordset подменю Application Objects меню Insert . На экране появится диалоговое окно Recordset .
В поле ввода Name вводится уникальное имя создаваемого набора данных. Введите в него, например, AddRecord . Так будет сразу понятно, зачем нужен этот набор данных.
В раскрывающемся списке Connection выберите зарегистрированную базу данных. Вы также можете нажать кнопку Define ; на экране появится диалоговое окно Data Source Name ( DSN ), с помощью которого вы сможете заре­гистрировать базу данных, если не сделали это ранее.
В раскрывающемся списке Table выберите нужную таблицу зарегистрированной базы данных. Впрочем, она у нас всего одна — Guestbook .
Группа переключателей Columns позволит вам извлечь данные из всех полей выбранной таблицы или только из некоторых. Если вы включите переключатель All (вообще-то он включен по умолчанию), данные будут извлечены из всех полей таблицы. Чтобы извлечь данные только из некоторых полей, включите переключатель Selected и выберите нужные поля в списке, расположенном ниже. Чтобы выбрать сразу несколько пунктов, щелкайте по ним, удерживая нажатой клавишу < Ctrl >.
Чтобы проверить, правильно ли введены параметры, нажмите кнопку Test . После этого на экране должно появиться диалоговое окно Test SQL Statement , похожее на уже знакомое вам окно View Data . Если параметры набора данных введены неправильно, Dreamweaver выдаст вам соответст­вующее окно-предупреждение.
Элементы управления, расположенные в нижней части окна Recordset и предназначенные для задания фильтров, мы рассмотрим позднее. Сейчас же просто нажмите кнопку ОК.
После того как вы создадите новый набор данных, он появится в панели Bindings в виде ветви иерархического списка. Эта ветвь будет содержать все поля созданного набора данных, а также некоторые дополнительные поля, которые не берутся из таблицы, а вычисляются самим процессором баз данных. Такие поля называются системными. Давайте их перечислим.
[ first record index ] — номер первой записи набора, показываемой на текущей странице.
[ last record index ] — номер последней записи набора, показываемой на текущей странице.
[ total records ] — количество записей в наборе.
Вы можете использовать системные поля на своих страницах наряду с обычными полями таблицы.Если вы хотите исправить параметры какого-либо набора данных, дважды щелкните по нужной строке списка. Учтите, что щелкать надо по начальному пункту ветви. После этого на экране появится диалоговое окно Recordset , в котором вы сможете изменить необходимые параметры.
Чтобы удалить ненужный набор данных, выделите соответствующий пункт и нажмите кнопку со знаком "минус".
А теперь поговорим о свойствах набора данных. Чтобы увидеть их, вам сначала нужно выделить соответствующий пункт списка панели Bindings . Но обычно этого мало — редактор свойств так же будет отображать параметры страницы, открытой в окне документа. Поэтому дважды щелкните по нужному набору данных в списке, чтобы вызвать диалоговое окно Recordset , и тут же закройте его, щелкнув кнопку Cancel . Только после этого редактор свойств наконецто покажет параметры набора данных. В поле ввода Recordset вводится имя набора данных. Текстовое поле Connection отображает имя зарегистрированной базы данных, из которой будут извлекаться записи данного набора. Вы можете нажать кнопку Edit ; на экране появится диалоговое окно Recordset , в котором вы сможете изменить параметры набора данных.
В поле ввода SQL отображается текст запроса на языке SQL , сформированный Dreamweaver . В данный момент там находится следующий текст:
SELECT * FROM Guestbook
Разберем его пословно:
select — ключевое слово, задающее набор полей;
* (звездочка) обозначает все поля таблицы;
from — ключевое слово, задающее таблицу;
Guestbook — таблица.
Как видите, запросы на языке SQL напоминают фразы английского языка. И, в общемто, они довольно понятны, "прозрачны", как говорят.
Раскрывающийся список Cursor Type служит для задания типа набора данных. В нем доступны четыре пункта:
Static статический набор данных, содержащий только те записи таблицы, которые присутствовали в ней на момент выборки. Доступен только для чтения;
Forward Only однонаправленный статический набор данных, по которому можно перемещаться только по направлению от первой записи к последней, но не обратно. Обеспечивает более высокое быстродействие, чем простой статический набор данных. Этот пункт выбран по умолчанию;
Dynamic динамический набор данных, содержащий все записи таблицы и отражающий все изменения, добавления и удаления, сделанные други ми пользователями базы данных. Доступен как для чтения, так и для записи;
Keyset ограниченный динамический набор данных, не отражающий добавления и удаления, сделанные другими пользователями базы данных.
Раскрывающийся список Cursor Location задает местонахождение набора данных, в смысле, где он обрабатывается: на стороне клиента (пункт Client ) или на стороне сервера (пункт Server ). По умолчанию выбран пункт Server , и это правильно — ведь мы создаем серверное приложение.
Раскрывающийся список Lock Type задает тип блокировки. Блокировка ис­пользуется для того, чтобы ограничить доступ к записи, изменяемой каким-либо пользователем базы данных, другим пользователям. Если блокировку не использовать, может произойти конфликт изменения данных, когда одновременно несколько пользователей будут пытаться сохранить изменения, сделанные в одной и той же записи. Здесь доступны четыре пункта:
Read Only — записи набора доступны только для чтения;
Pessimistic пессимистическая блокировка, когда запись блокируется, как только пользователь начинает изменять значения ее полей. Как только пользователь сохранит изменения, блокировка снимается;
Optimistic оптимистическая блокировка, когда запись блокируется только на момент записи в нее новых значений;
Batch Optimistic — разновидность оптимистической блокировки, используемой при операциях изменения сразу нескольких записей.
Задайте для нашего набора данных динамический тип (пункт Dynamic рас­крывающегося списка Cursor Type ) и оптимистическую блокировку (пункт Optimistic раскрывающегося списка Lock Type ), т. к. мы будем создавать страницу, добавляющую в таблицу новую запись. Остальные элементы управления пока не трогайте.
Страница , отображающая данные
Серверную страницу, отображающую данные, создать проще простого. После того как мы создали набор данных, нам остается только перетаскивать в страницу нужные поля из панели Bindings — a Dreamweaver сделает все остальное.
Итак, откройте страницу Guestbook . asp , если вы ее еще не открыли. И поместите в нее динамический текст, отображающий содержимое поля таблицы Guestbook . Можете считать, что динамический текст — своего рода изменяемая область шаблона, содержимое которой будет взято из заданного вами поля таблицы.
Как это сделать? Как уже было сказано, просто перетащив нужное поле (в нашем случае — Content ) из панели Bindings на Web -страницу. Если вы уже закрыли эту панель, то можете щелкнуть кнопку Dynamic Text вкладки Application панели объектов или выбрать пункт Dynamic Text подменю Application Objects меню Insert . После этого на экране появится диалоговое окно Dynamic Text . Выберите нужный пункт в иерархическом списке Field и нажмите кнопку ОК.
Созданный нами динамический текст выглядит не очень вдохновляюще. Просто какойто текст, заключенный в фигурные скобки и выделенный голубым цветом. Чтобы познать его скрытую силу, нам нужно наполнить его реальными данными. А для этого необходимо загрузить страницу в Web -обозревателе...
Но не хочется нам открывать этот Web -обозреватель! Не хочется, и все тут. Ведь Dreamweaver имеет встроенные средства просмотра серверных Web -страниц в том виде, в каком они будут отображены в Web -обозревателе, вместе со всеми данными. Это так называемый режим показа "живых" данных. И сейчас мы выясним, как в него переключиться.
А сделать это проще простого. Нажмите кнопку-выключатель Live Data View в инструментарии документа. Если вы убрали этот инструментарий с экрана, включите пункт-выключатель Live Data в меню View или нажмите комбинацию клавиш < Ctrl >+< Shift >+< R >. После этого Dreamweaver запросит данные из базы и выведет открытую в окне документа страницу в своем "настоящем" виде.
Тарабарщина, которую вы видите на этом рисунке, — содержимое поля content первой записи таблицы Guestbook . Это отладочные данные, введен­ные автором, чтобы проверить, как работает серверная страница.
Да, но где остальные записи?
Дело в том, что динамический текст показывает только содержимое одной — текущей — записи набора данных. Чтобы увидеть все остальные записи, вам нужно будет переместиться на них. Как это сделать? Сейчас мы узнаем.

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