Рис. 3.1. Экранная форма стартовой страницы dbf.html с элементами управления сервером dbfWebServer
Документация
Документация представлена тремя ссылками:
– Manuel of dbfWebServer;
– Manuel of HTML4;
– xHarbour functions.
ссылка «Manuel of dbfWebServer» представляет данный вариант документа в электронном виде.
ссылка «Manuel of HTML4» переводит пользователя в документацию для разметки текста в среде Интернет HTML4 на русском языке в оригинальном представлении.
по ссылке «xHarbour functions» осуществляется переход к информационному блоку, который предоставляет доступ к документации xHarbour относительно функции в файловом виде.
Редактирование
Режим редактирования предназначен для работы со скриптами на расстоянии. Скрипты хранятся в виде файлов типа *.html. Эти файлы можно редактировать обычным редактором.
Другой способ редактирования этих файлов предлагается осуществлять через интерфейс системы. Переход к этому режиму работы находится по ссылке «HTML editor».
Если при входе в форму редактирования файлов список файлов оказывается пустым, следует кликнуть по заголовку таблицы, и список заполнится перечнем имён файлов, которые находятся в директории
/html/*.html
Количество записей в списке регулируется с помощью элементов управления « – » и «++». Нажимая тот или иной элемент, можно добиться токого количества записей в списке, которое наилучшим образом соответствует размеру зоны вывода.
Размер поля редактирования регулируется элементами управления по вертикали « – x++» и по горизонтали « – y++».
Сохранить введённые значения можно, нажав кнопку, на которой стоит знак «плюс».
Если требуется изменить интерфейс, можно изменить код соответствующих скриптов.
Запросы к серверу
Вот мы и подошли к сути задачи. А суть эта состоит в том, что серверу нужно посылать определённые запросы и получать необходимую информацию, запрошенную у сервера.
Здесь необходимо напомнить, что запросы к серверу строятся в виде блоков кода. Это обусловлено тем, что используется СУБД CLIPPER-xHarbour, которая ориентирована в данном случае на работу с блоками кода.
Например, следующий запрос к серверу, использующий свойства блока кода, будет выглядеть следующим образом:
src="http://localhost:4180/cb:='<table width=100%>», i:=1,DBFRUN00-> (dbgotop (), ixWhile (»! eof ()», ’cb+= [<tr> <td>] + str (i) + [<td>] +FieldGet (1) + [<td>] +FieldGet (2) + [<td width=100%>] + STRTRAN (FieldGet (3), [<], []),dbskip (),i++»)), cb»
Данный запрос заставляет сервер строить ответ, сразу содержащий непосредственно таблицу, данные и разметку, как показано на рис.3.2 в левой части формы.
Простой запрос в виде математического выражения, например, можно набрать прямо в адресной строке браузера и получить ответ:
http:// localhost:4180/ (123+4) /2
ответом будет вычисленный результат введённого математического выражения.
К серверу можно обращаться напрямую, как было показано выше, из адресной строки браузера.
К серверу можно обращаться из скриптов, которые хранятся в файлах типа *.html.
С сервером можно общаться через библиотеку блоков кода, которая хранится в таблице DBFRUN00.dbf. В этом случае можно строить сложные алгоритмы обработки данных, осуществлять взаимодействие с другими серверами, программами и информационными ресурсами.
Рис. 3.2. Экранная форма запроса к таблице DBFRUN00, созданная с помощью скрипта dbfcodeblock.html
Рис. 3.3. Экранная форма запроса к таблице DBFRUN00, созданная с помощью скрипта PHP и базы данных MySQL
После нажатия кнопки «плюс» [+], которая отображена на экранной форме, представленной выше, соответствующий PHP-скрипт получает значения переменных $m, $id, $txt из пользовательской формы, как показано ниже, и переносит полученные значения в базу данных MySQL и таблицу DBFRUN00.dbf.
PHP-скрипт
$h=«localhost»;
$p=4180;
$page="http://".$h."/ixbase/e.php";
$sp=«ix=dbfrun00.rcve&naiblo=$m&alikey=$id&valblo=». urlencode (trim ($txt));
$np=strlen ($sp);
$fp=fsockopen ($h,$p,$errno,$errstr,10);
if (!$fp) {
echo «I can’t connect to $h»;
} else {
fputs ($fp,«POST $page HTTP/1.0
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, application/x-icq, */*
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows 98)
Accept: */*
Referer: http://$h/
Host: $h