Работа с базами данных


ДОСТУП К БАЗАМ ДАННЫХ ПОСРЕДСТВОМ CGI-СКРИПТА, НАПИСАННОГО НА ЯЗЫКЕ ESQL - часть 3


При нажатии некоторой кнопки на форме HTML документа происходит передача данных броузером серверу, на котором находится программа-обработчик данных. Основная работа такой программы заключается в:

  • получении данных формы HTML-документа в виде строки, в которой перечислены значения всех элементов HTML формы, инициировавшей запуск программы (данная строка записана в соответствие с четко определенным форматом);
  • разборе полученной строки;
  • обработке данных (например, занесение полученных значений в базу данных или выборка некоторых записей из базы данных по полученным значениям и т.д. и т.п.);
  • формировании HTML-документа, который будет передан сервером программе-броузеру.

Обработка CGI-скриптом данных формы составляет шаблонную часть скрипта.

Данные, веденные в форме, передаются CGI-модулю в виде последовательности символов через входной поток (метод POST) или переменную CGI-окружения (метод GET) в формате:

имя=значение&имя1=значение1&...&имяN=значениеN,

где имяi - значение параметра name из элемента HTML-формы, значениеi - введенное или выбранное значение независимо от его типа.

Алгоритм обработки передаваемой в CGI-скрипт строки данных состоит в разделении ее на пары имя=значение и декодирования каждой пары, учитывая, что все пробелы в введенных значениях в форме сервером были заменены символом "+" и символы с десятичным кодом больше 128 преобразованы в символ "%" и следующим за ним шестнадцатеричным кодом символа.

После шаблонной части CGI-скрипта следует содержательная часть, в которой можно анализировать полученные данные, обращаясь, при необходимости, к различным таблицам баз данных. При написании CGI-скрипта на языке ESQL/C работа с базой данных ведется средствами встроенного языка SQL и главных переменных, через которые передаются и возвращаются данные к серверу баз данных. Результаты обработки данных, полученных из базы данных, а также другие информационные сообщения передаются функцией printf() в выходной поток с учетом форматирования HTML-документа.




Начало  Назад  Вперед



Книжный магазин