] + 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
Content-Length:». $np.»
Pragma: no-cache
«.$sp);
$reply=«»;
while (!feof ($fp)) $reply.=fgets ($fp,256); fclose ($fp);
echo "$reply»;
Примечание. Запросы к серверу из HTML-скриптов передаются с помощью метода GET или POST.
Как было показано выше, более мощный инструмент работы с данными получается при использовании PHP. HTML-скрипты без PHP позволяют создавать сравнительно простые пользовательские формы, которые можно отнести, безусловно, уже к динамическим страницам.
Основной задачей создания динамических страниц для наших задач при помощи таблиц является формирование управляемых списков. На это следует обратить особое внимание.
Чаще всего в информационных системах в качестве пользовательской формы строится карточка со списком. Карточка может быть выполнена в виде списка, но сути карточки в данном случае это не меняет. Карточка представляет развёрнутую информацию об объекте, полный перечень данных об объекте находится рядом со списком. По списку можно перемещаться, выбирая, таким образом, объект для детального просмотра. Карточка представляет информацию о выбранном объекте в нужном виде и объёме и позволяет редактировать эти данные.
Данное общее описание более потробно будет представлено в разделе «Спецификации интерфейса списков v.1.0».
Отличительной особенностью сервера является то, что используются блоки кода. Это обусловлено тем, что программа создана на платформе CLIPPER – xHarbour. Прежде всего, xHarbour – это виртуальная машина (VM). Такой подход уже использовался в системе управления базами данных (СУБД) CLIPPER, используется в JAVA.
|