ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Використання пакету Cold Fusion для MS Windows при побудові WWW - інтерфейсів до баз даних
         

     

    Інформатика, програмування
    Використання пакету Cold Fusion для MS Windows при побудові WWW - інтерфейсів до баз даних.

    5.1Введеніе

    5.2Установка Cold Fusion

    5.3Адміністрірованіе Cold Fusion

    5.4Взаімодействіе Cold Fusion з базами даних

    5.5Передача параметрів у DBML - шаблон

    5.6Занесеніе і модифікація даних з використанням тегів DBINSERT і DBUPDATE

    5.7Виполненіе запитів до баз даних

    5.8Іспользованіе результатів запиту для динамічного створення HTML - документа

    5.9Вивод результату виконання запиту у вигляді таблиці

    5.10Дополнітельние зауваження щодо створення DBML - шаблонів

    5.11Іспользованіе параметрів і змінних в шаблонах
    5.11.1Поля форми і параметри URL
    5.11.2Переменние оточення CGI
    5.11.3Прімененіе тега DBSET для створення змінних
    5.11.4HTTP Cookies
    5.11.5Іспользованіе результатів виконання запитів

    5.12Проверка коректності даних і форматування виводу
    5.12.1Проверка коректності даних у полях форми
    5.12.2Функціі виводу в DBML

    5.13Дінаміческое зміна вмісту документа
    5.13.1Условний оператор (DBIF & DBELSE)
    5.13.2Перенаправленіе на інший URL (DBLOCATION & DBABORT)
    5.13.3Включеніе в шаблон інших шаблонів
    5.13.4Определеніе типу даних MIME для вмісту документа

    5.14Расшіренние можливості
    5.14.1Дінаміческое визначення SQL виразу
    5.14.2Поддержка транзакцій
    5.14.3Вложенние області виводу і групування
    5.14.4Іспользованіе списочних полів з множинним вибором
    5.14.5Дополнітельние команди SQL

    При підготовці даного розділу звіту використовувалися матеріали "Cold Fusion User Guide" (Посібник користувача пакету Cold Fusion). 5.1 Введення

    Пакет Cold Fusion фірми Allaire - це засіб для швидкої розробки інтерактивних, динамічних документів для Web засноване на обробці інформації з баз даних, в основі якого лежить наступний набір технологій:  HTML (Hyper-Text Markup Language)  CGI (Common Gateway Interface)  SQL (Structured Query Language)  ODBC (Open Database Connectivity)

    Розробка програм з використанням Cold Fusion не вимагає програмування на таких мовах як Perl, C/C + +, Visual Basic чи Delphi. Замість цього ви створюєте програму, вставляють у звичайний (стандартний) HTML файл спеціальні теги для роботи з базами даних.

    У цьому розділі розглядається Cold Fusion версії 1.5. 5.2 Установка Cold Fusion

    Cold Fusion запускається як CGI додаток на різних Web-серверах під Windows NT і Windows 95 і повинен бути сумісний з будь-яким сервером підтримує CGI.

    Cold Fusion тестувався на сумісність з такими серверами:  O'Reilly WebSite  Microsoft Internet Server  EMWAC HTTPS  Process Software Purveyor  Netscape Communications/Commerce Server  Internet Factory Communications/Commerce Builder  Spry Safety Web Server  CSM Alibaba

    Для зв'язку з різними СУБД Cold Fusion використовує 32-розрядні ODBC - драйвера. Для коректної роботи з Cold Fusion ODBC - драйвер повинен задовольняти наступним вимогам:  Це має бути 32-розрядний драйвер.  Він повинен підтримувати Рівень 1 ODBC API.  Повинна підтримуватися базова граматика SQL.  Для сумісності з функціями введення дати і часу, драйвер повинен      підтримувати відповідні типи даних.

    Для встановлення і використання Cold Fusion система повинна задовольняти наступним вимогам:  Операційна система Windows NT 3.51 (або вище) або Windows 95.  Мікропроцесор 80386 або вище; рекомендується Pentium.  10Mb вільного дискового простору.  24Mb RAM для Windows NT або 16Mb для Windows 95  Встановлена мережева підтримка TCP/IP.  Встановлений WWW сервер.

    Для установки Cold Fusion потрібно запустити програму SETUP.EXE, яка повинна знаходиться на інсталяційному диску 1.

    Крім копіювання файлів, необхідних для роботи Cold Fusion, в процесі установки, в кореневій директорії з документами Web сервера створюється директорія з ім'ям CFPRO. Ця директорія містить:  Тест, для перевірки правильності встановлення системи.  Міні-підручник, у форматі HTML, що допоможе вам освоїти ази Cold Fusion.  Приклади додатків, що демонструють різні способи      використання Cold Fusion.

    Щоб перевірити правильність встановлення Cold Fusion, потрібно відкрити документ, URL до якого має вигляд http://myserver/cfpro/getstart.htm, де myserver - Ім'я або IP адреса вашого Web сервера. 5.3 Адміністрування Cold Fusion

    Для адміністрування в Cold Fusion передбачений спеціальний інтерфейс адміністратора. Цей інтерфейс дозволяє змінювати різні параметри налаштування Cold Fusion за чотирма категоріями:   Data Sources - використовується для налаштування джерел даних ODBC, для      використання їх із Cold Fusion. Щоб додати джерело даних, потрібно      натиснути на кнопку "Add ...", вибрати один з встановлених в системі      драйверів ODBC і задати визначені для нього настройки. Відхилити      ці настройки можна скориставшись кнопкою "Setup ...",      попередньо виділивши конкретне джерело даних. Якщо потрібно визначити      способи взаємодії Cold Fusion з джерелом даних, то потрібно натиснути на      кнопку "Preferences ..." і визначити такі атрибути як ім'я      користувача, пароль, допустимі операції з базою даних та ін   Templates      - Використовується для налаштування логічних шляхів до директорій в яких      розташовані файли з шаблонами Cold Fusion.   Debugging      - Використовується для налаштування налагоджувальних повідомлень і повідомлень про помилки.   Mail --      використовується для настроювання параметрів SMTP mail і дозволяє переглядати      журнал повідомлень і помилок. 5.4 Взаємодія Cold Fusion з базами даних

    Cold Fusion дозволяє динамічно генерувати HTML документи засновані на запити користувача. Ці запити передаються в Cold Fusion CGI - скрипт (DBML.EXE), який пересилає дані в Cold Fusion Engine обробляє ці дані у відповідності із заданим шаблоном, виконуючи необхідні запити і генеруючи HTML документ, який відправляється користувачеві.

    Основою динамічного створення документів є спеціальні теги, що входять у мову розмітки DBML, орієнтовані на роботу з базами даних. Майже всі основні можливості Cold Fusion зосереджені в чотирьох тегах:  DBQUERY - виконання SQL - запиту до бази даних;  DBINSERT & DBUPDATE - створення і модифікація записів в базі      даних;  DBOUTPUT - відображення результату запиту, що допускає його      довільне розміщення серед HTML - тегів.

    Шаблон, на основі якого генерується HTML - документ, який являє собою комбінацію тегів HTML і DBML:  HTML - теги використовуються для форматування як постійної частини      документа, так і результатів запитів. Наприклад, можна визначити      напівжирний шрифт для кожного поля і розділові лінії між записами.  DBML - теги використовуються для формування запиту до бази даних, а      також визначають де і як будуть відображені результати запитів.

    На малюнку 5-1 показується, як Cold Fusion обробляє запит, отриманий від клієнта:


    Малюнок 5-1

     Коли користувач натискає кнопку типу "Submit" у формі      або вибирає гіпертекстную посилання в документі, Web - браузер відправляє      запит на Web - сервер.  Web - сервер, якщо в запиті зазначено DBML - шаблон, запускає      процес Cold Fusion, відправляючи йому дані, отримані від клієнта.  Cold Fusion приймає дані, отримані від клієнта обробляє      теги DBML в шаблоні, включаючи підготовку запиту до бази даних і      форматування, яке буде використовуватися в результуючому документі.  Cold Fusion взаємодіє з базою даних використовуючи ODBC.  Cold Fusion динамічно генерує HTML - документ містить      результат виконання запитів до бази даних і повертає його Web --      сервера. Cold Fusion може також динамічно генерувати поштове      повідомлення і відправляти його через поштовий SMTP - сервер.  Web - сервер повертає згенерований HTML - документ Web --      клієнтові. 5.5 Передача параметрів у DBML-шаблон

    Існує кілька способів передачі параметрів між шаблонами. Можна передавати параметри безпосередньо в URL, використовувати для цього форму або cookie.

    Якщо параметри передаються через URL, то вони додаються до адреси, що викликається шаблону через символ "&" (амперсанд) у вигляді параметр = значення. Наприклад, гіпертекстова посилання, наведена нижче, відправляє параметр з ім'ям 'user_id' і значенням 5 в шаблон 'example.dbm':

    При передачі параметрів через форму використовуються поля форми, які повинні мати імена, що збігаються з іменами параметрів, які потрібно передати. Нижче наведено приклад передачі параметра, з попереднього прикладу використовуючи форму:



     

    Зауважимо, що при зверненні до CGI - програму DBML.EXE повинен бути визначений стандартний параметр Template, який вказує на конкретний шаблон.

    Змінні, занесені до cookie браузера і змінні оточення CGI доступні в будь-якому шаблоні. Способи занесення інформації в cookie описані в п.5.11. 5.6 Занесення і модифікація даних з використанням тегів DBINSERT і DBUPDATE

    При використанні тегів DBINSERT і DBUPDATE для занесення або модифікації даних, параметри повинні бути передані в шаблон обов'язково з форми, використовуючи метод POST.

    Для створення нового запису в базі даних використовується тег DBINSERT, а для модифікації існуючої запису використовується тег DBUPDATE. При використанні цих тегів необхідно визначити атрибути DATASOURCE і TABLENAME. DATASOURCE це назва джерела даних ODBC, що містить редаговану таблицю, а TABLENAME - ім'я цієї таблиці.

    Наприклад, якщо джерело даних ODBC називається 'Person DB', а таблиця, в якій потрібно створити запис - 'Person', то тег DBINSERT в шаблоні буде мати такий вигляд:

    Параметри, передані в шаблон повинні співпадати з іменами полів таблиці, в якій створюється (модифікується) запис. У тому випадку, якщо не всі передаються параметри повинні брати участь у цій процедурі, використовується атрибут FORMFIELDS, в якому через кому перераховуються імена полів таблиці, для яких повинні існувати однойменні параметри.

    Особливо слід зазначити, що для того, щоб використовувати тег DBUPDATE для модифікації запису, у таблиці повинен бути визначений первинний ключ, а для всіх полів включених в первинний ключ з оброблюваної HTML-форми обов'язково повинні бути передані відповідні параметри.

    Теги DBINSERT і DBUPDATE можуть мати також ще два необов'язкових атрибуту:  TABLEOWNER - для тих джерел даних які підтримують права      власності на таблиці (наприклад, SQL Server, Oracle та ін), цей      атрибут можна використовувати, щоб вказати власника таблиці.  TABLEQUALIFIER - для різних джерел даних цей атрибут      може мати різний зміст. Так, для SQL Server і Oracle - це ім'я бази      даних, у якій міститься таблиця, а для Intersolv dBase - це      директорія в якій розташовані DBF файли.

    Приклад
    Нехай визначена HTML - форма для введення даних:



    Приклад введення даних для створення запису



    ПІБ:
    Телефон :
    Дата народження:
     

    Наступний шаблон, example.dbm, якому будуть передані дані з форми створює запис в таблиці і видає що підтверджує повідомлення:



    Підтвердження

    Запис створена!

    5.7 Виконання запитів до баз даних

    Для виконання запитів до бази даних використовується тег DBQUERY. Цей тег має наступний синтаксис:

    Атрибут NAME визначає ім'я запиту, який використовується далі для відображення результату виконання запиту. Назва запиту має починатися з букви і може містити букви і цифри (прогалин бути не повинно).

    Атрибут DATASOURCE задає ім'я джерела даних ODBC, який повинен бути створений за допомогою інтерфейсу адміністратора Cold Fusion.

    Співпадіння атрибутом тега DBQUERY, є атрибут SQL, який власне і визначає запит до бази даних на мові SQL (для поліпшення читабельності, допускається розташування значення ознаки SQL на декількох рядках).

    Створюючи SQL запит, слід пам'ятати, що конкретна база даних може мати свої особливості в синтаксисі SQL, використання яких обмежується цією базою даних. Щоб перевірити, чи є конкретне SQL вираз сумісним з ODBC і незалежним від конкретної бази даних, краще всього використовувати Microsoft Query, що входить до складу Microsoft Office. Для цього потрібно в меню Microsoft Query вибрати "Файл/Виконати SQL", у вікні діалогу ввести пропозицію SQL, вибрати джерело даних ODBC, натиснувши на кнопку "Джерела ...", після чого натиснути на кнопку "Виконати". Цей продукт можна також використовувати і для створення SQL - виразів, використовуючи для цього візуальні засоби створення запитів. Отримати SQL - вираз створеного таким чином запиту можна натиснувши на кнопку "SQL" в панелі інструментів.

    Атрибут MAXROWS є необов'язковим і визначає максимальну кількість записів, які можуть бути повернуті в результаті виконання запиту.

    Атрибут TIMEOUT також є необов'язковим і визначає максимальну кількість мілісекунд для виконання запиту, до видачі повідомлення про помилку. Зауважимо, що цей атрибут підтримується лише деякими ODBC - драйверами (наприклад, драйвером для MS SQL Server 6.0).

    Атрибут DEBUG використовується для налагодження запитів. При наявності цього атрибуту користувачеві відправляється додаткова інформація про виконання цього запиту, така як текст виконаного SQL - запиту, кількість повернутих записів та ін

    Наведемо приклад запиту з назвою 'AllPersons', який повертає всі записи таблиці 'Persons' з бази даних, з якою пов'язаний джерело даних ODBC з ім'ям 'Person DB':

    Для динамічного настроювання SQL - вирази можна використовувати параметри, передані в шаблон. Це можуть бути параметри, передані з форми, URL, а також змінні CGI. Параметри, що використовуються всередині SQL - вирази, повинні бути обрамлені символом "#" (наприклад # Name #). При обробці запиту Cold Fusion шукає параметр з такою назвою серед параметрів, отриманих з форми, в URL або серед змінних CGI. При знаходженні відповідного параметра його значення підставляється замість відповідної посилання на параметр.

    Приклади використання параметрів в SQL-вираженні

    Приклад 1
    Припустимо що обробляється URL

    "/ cgi-shl/dbml.exe? Template = prs.dbm & Id = 22",

    а атрибут SQL в DBQUERY має вигляд

    SQL = "select * from Persons where Id = # Id #",

    тоді в базу даних буде передано наступне SQL - вираз:

    select * from Persons where Id = 22.

    Приклад 2
    Припустимо, що в шаблон переданий параметр FirstLetters і потрібно знайти в таблиці Persons записи, в яких перші літери в полі FullName збігаються зі значенням цього параметра. Значення атрибуту SQL в цьому випадку буде наступним:

    SQL = "select * from Persons
    where FullName like '# FirstLetters #%'"

    Слід звернути увагу на те, що маска, що складається з параметра або символ '%', на відміну від попереднього прикладу, обрамлена одинарними лапками. Це пов'язано з тим, що поле Id з прикладу 1 має числовий тип, а поле FullName - текстовий тип (синтаксис SQL вимагає, щоб текстові значення завжди були обрамлені одинарними лапками).

    Для того щоб задати маску, у прикладі використовувався символ '%', який в SQL - запитах відповідає довільній послідовності символів. Також для визначення маски може використовуватися символ '_' (почерк), що відповідає одному довільному символу. 5.8 Використання результатів запиту для динамічного створення HTML - документа

    Для виведення даних що повертаються у результаті виконання запиту визначеного в DBQUERY застосовується тег DBOUTPUT. Всередині цієї мітки, пов'язаного з конкретним запитом, може знаходитися звичайний текст, теги HTML, посилання на поля визначені в запиті. При обробці шаблону, вміст тегу DBOUTPUT відправляється клієнтові для кожного запису, що повертається в результаті виконання запиту, з підстановкою відповідних значень параметрів і полів.

    Тег DBOUTPUT має наступний синтаксис:


    Текст, теги HTML,
    посилання на поля та параметри (тобто # Name #)

    Атрибут QUERY застосовується для зазначення імені запиту DBQUERY, результат виконання якого буде використовуватися, а атрибут MAXROWS визначає Максимальна кількість записів цього запиту, які будуть передані для виведення в тег DBOUTPUT.

    Приклад
    Для виведення результату виконання запиту з назвою 'AllPersons', відображаючи ім'я персони і телефон, і розділяючи запису горизонтальною лінією, може використовуватися наступна конструкція:



    # FullName # (Телефон: # Phone #)

    Результат обробки цього тега буде мати вигляд:


    Іванов Іван Іванович (Телефон: 222-22-22)

     
    Петров Петро Петрович (Телефон: 444-44-44)
    5.9 Висновок результату виконання запиту у вигляді таблиці

    Теги DBTABLE і DBCOL завжди вживаються разом для відображення результату виконання запиту у вигляді таблиці.

    Атрибути тега DBTABLE:                      · QUERY         - Ім'я DBQUERY, для якого потрібно відобразити дані;             · MAXROWS         - Максимальна кількість записів, що може бути відображено в таблиці;             · COLSPACING         - Кількість прогалин, які будуть вставлені між колонками (за замовчуванням 2);             · HEADERLINES         - Кількість рядків, які будуть відведені для заголовка (за замовчуванням 2);             · HTMLTABLE         - За наявності?? цього тегу результат запиту буде відображено у вигляді HTML - таблиці, в іншому випадку   буде використаний тег HTML.             · BORDER         - Використовуєте тільки разом з атрибутом HTMLTABLE для відображення рамки в таблиці.     

    Атрибути тега DBTABLE:                      · HEADER         - Текст, який буде виводитися як заголовок колонки;             · WIDTH         - Ширина колонки в символах (за замовчуванням 20);             · ALIGN         -вирівнювання вмісту колонки (LEFT, RIGHT і CENTER);             · TEXT         -укладений в лапки текст, що визначає вміст стовпчика, в якому можуть знаходитися ті самі   теги, посилання на параметри та ін, що і в тезі DBOUTPUT.     

    Наведемо приклад використання тегів DBTABLE і DBCOL:




     
      5.10 Додаткові зауваження по створенню DBML - шаблонів  У шаблонах DBML, для коментарів, використовується три тире      (

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status