Использование пакета Web - Oracle -Web (WOW)
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: бизнес реферат, дипломная работа разработка
| Добавил(а) на сайт: Филимон.
Предыдущая страница реферата | 1 2
Указатель на модуль пакета WOW, находящийся в каталоге CGI - программ. Расширение программы wow - .koi8, .win, .iso, .alt определяет кодировку WWW - клиента: КОИ-8 Microsoft Code Page 1251 ISO 8859-5 Microsoft Code Page 866
Например:
http://www.cnit.nsu.ru/cgi-bin/wow.win
http://www.cnit.nsu.ru/cgi-bin/wow.win/test
Если процедура входит в состав пакета (example), созданного в схеме www, необходимо добавить имя пакета и имя процедуры:
http://www.cnit.nsu.ru/cgi-bin/wow.win/example.test
Когда пакет создан в другой схеме Oracle, необходимо указывать и имя схемы. Например, для схемы fancy получим:
http://www.cnit.nsu.ru/cgi-bin/wow.win/fancy.example.test
Пользователь www должен иметь права на исполнение этой процедуры, явно предоставленные оператором GRANT языка SQL.
После имени процедуры, через разделитель '?', начинают перечисляться параметры процедуры и их значения в виде пар:=
между собой, различные параметры разделяются амперсандом '&':
=&=
Название параметра должно совпадать с названием параметра вызываемой процедуры. Число параметров должно в точности соответствовать числу параметров процедуры. Если хотя бы одно из этих требований не соблюдено, Вы получите сообщение об ошибке. Порядок указания параметров значения не имеет. Большие и маленькие буквы в названии параметров равнозначны.
Число реально передаваемых параметров может и не совпадать с числом параметров, указанных в спецификации процедуры. В этом случае, все опускаемые параметры должны иметь значения по умолчанию.
Пример:
http://www.cnit.nsu.ru/cgi-bin/wow.win/example.test?answer=no
Исходя из описанного механизма работы пакета WOW можно сформулировать основные требования к PL/SQL - процедурам, обрабатывающим запросы от WWW - сервера.
Все входные переменные, передающиеся через WOW в процедуру всегда имеют тип varchar2. Если Вы хотите использовать какой - либо другой тип данных, необходимо использовать функции преобразования из varchar2. В пакете htp отсутствуют функции вывода начала и конца HTML - документа. Поскольку многие современные броузеры интерпретируют текст без обрамляющих тегов ... как преформатированный, необходимо прямо задавать эти теги в начале и конце документа.Пример пакета example:
Create or Replace package example is
procedure test(answer in Varchar2);
end;
/
Create or Replace package body example is
procedure test(answer in Varchar2) is
ответ varchar2(3);
cursor c_man(ans in varchar2) is select Фамилия from Результаты_опроса where
Ответ=ans order by Фамилия;
begin
-- Начало документа
htp.p('');
-- Вывод названия страницы и заголовка
if answer = 'no'
then
ответ:='НЕТ';
htp.htitle('Фамилии людей, ответивших отрицательно');
else
ответ:='ДА';
htp.htitle('Фамилии людей, ответивших положительно');
end if;
htp.olistopen;
-- Начало нумерованного списка
for man in c_man(Ответ) loop
-- Элемент списка
htp.item(man.Фамилия);
end loop;
-- Конец нумерованного списка
htp.olistclose;
-- Конец документа
htp.p('');
end;
end;
/
При этом подразумевается что в схеме WWW Oracle находится таблица примерно следующей структуры:
Create table Результаты_опроса(Фамилия varchar2(30),
Имя varchar2(14),
Отчество varchar2(20),
Ответ varchar2(3));
Обращаться к пакету WOW можно и из форм HTML. Ниже приведен пример обращения к тому же пакету example из простейшей формы.
Тестовая форма
Тестовая форма
Введите ответ:
procedure title(ctitle in varchar2) | - выводит название документа (теги ) |
procedure htitle(ctitle in varchar2) | - выводит название документа и повторяет его в заголовке первого уровня (теги , ) |
procedure header(nsize in integer, cheader in varchar2) | - выводит заголовок уровня nsize (теги ... ) |
procedure url(curl in varchar2, cname in varchar2) | - формирует cname как гипертекстную связь, указывающую на curl (теги ). |
procedure gif(curl in varchar2) | - включает в документ картинку, путь до которой curl (теги ). |
procedure gif(curl in varchar2, calign in varchar2) | - включает в документ картинку, путь до которой curl с выравниванием, определяемым параметром calign (теги ). |
procedure bold(ctext in varchar2) | - выводит текст ctext жирным шрифтом (теги ). |
procedure italic(ctext in varchar2) | - выводит текст ctext шрифтом italic (теги ) |
procedure item(cval in varchar2) | - выводит cval как элемент списка (теги ). |
procedure formOpen(curl in varchar2) | - создает форму с действием curl (теги ). |
procedure formHidden(cname in varchar2, cvalue in varchar2) | - создает скрытое поле формы для хранения значения cvalue переменной с именем cname. |
procedure formPassword(cname in varchar2), procedure formPassword(cname in varchar2, cvalue in varchar2) |
- создает поле формы для ввода значения переменной - пароля с именем cname и значением по умолчанию cvalue. |
procedure formField(cname in varchar2, nsize in integer), procedure formField(cname in varchar2), procedure formField(cname in varchar2, cvalue in varchar2) |
- создает поле формы для ввода значения переменной с именем cname длиной nsize со значением по умолчанию cvalue. |
procedure formText(cname in varchar2, nrow in integer, ncol in integer) | - создает многострочное поле формы (длиной ncol, высотой nrow) для ввода значения переменной с именем cname. |
procedure formCheckbox(cname in varchar2) | - создает элемент checkbox для ввода значения логической переменной cname. |
procedure formRadio(cname in varchar2, cval in varchar2) | - создает элемент radiobutton для ввода одного из значений cval переменной cname. |
procedure formSelectOpen(cname in varchar2) | - создает список значений для переменной с именем cname. |
procedure formSelectOption(cval in varchar2) | - добавляет значение cval в список значений переменной, описанной в formSelectOpen. |
procedure formSelectClose | - заканчивает список значений, открытый formSelectOpen. |
procedure formDo(cname in varchar2) | - создает кнопку типа SUBMIT текущей формы с именем cname. |
procedure formDo | - создает кнопку типа SUBMIT текущей формы с именем 'Submit'. |
procedure formUndo(cname in varchar2) | - создает кнопку типа RESET текущей формы с именем cname. |
procedure formUndo | - создает кнопку типа RESET текущей формы с именем 'Reset'. |
procedure formClose | - закрывает текущую форму. |
Процедуры вывода: | |
procedure print (cbuf in varchar2), procedure print (dbuf in date), procedure print (nbuf in number) |
- выводят значение различных типов. |
Синонимы для процедуры print - p: | |
procedure p (cbuf in varchar2), procedure p (dbuf in date), procedure p (nbuf in number). |
|
Процедуры, выводящие постоянные значения: | |
procedure line | - разделительная линия (тег ). |
procedure para |
- начало параграфа (тег ). |
procedure nl |
- перевод строки (тег ). |
procedure item | - элемент списка (тег ). |
procedure ulistOpen | - начало ненумерованного списка (тег ). |
procedure ulistClose | - окончание ненумерованного списка (тег ). |
procedure olistOpen | - начало нумерованного списка (тег ). |
procedure olistClose | - окончание нумерованного списка (тег ). |
procedure dlistOpen | - начало списка определений (тег ). |
procedure dlistClose | - окончание списка определений (тег ). |
procedure dterm | - термин списка определений (тег ). |
procedure ddef | - определение термина (тег ). |
procedure preOpen | - начало форматированного текста. |
procedure preClose | - окончание форматированного текста. |
Скачали данный реферат: Jepinger, Koshel'kov, Babanin, Revmira, Bunin, Менщиков, Инна.
Последние просмотренные рефераты на тему: мировая экономика, доклад по биологии, доклад, бесплатно решебник.
Категории:
Предыдущая страница реферата | 1 2