Примитивы, которые мы разрабатываем должны быть универсальны. Другими словами, они должны позволять работать с изменяемыми значениями параметров SQL. В противном случае разрабатывать приложения компоновкой примитивов нельзя.
Рассмотрим в качестве примера реализацию примитива добавления данных с параметром.
В частном случае, когда номер по списку id = 1 и соответствующая ему фамилия - name = "Иванов", он может быть записан так
<? // *** соединение с БД *** require "primitive/connect.inc"; // *** добавление данных *** $result = pg_Exec( $cnct, "INSERT INTO test values(1, 'Иванов')" ); if ( $result ) { echo "Data insert \n"; } ?>
Параметры примитива можно изменять с помощью html форм.
Начало описания формы обозначают оператором <FORM>. Заканчивают форму оператором </FORM>. Например,
<FORM METHOD=Get ACTION="insert.php3"> </FORM>
Рассмотрим основные параметры оператора <FORM>.
METHOD | - задает метод передачи данных от браузера расширению сервера Web (в нашем случае CGI скрипту). Мы указали метод Get, поскольку объем передаваемых данных невелик. Для передачи больших объемов данных используют метод Post. В этом случае скрипт получает данные, читая их из стандартного потока ввода. |
ACTION | - указывает путь к CGI скрипту. Когда пользователь нажмет кнопку, предназначенную для отправки заполненной формы, этот скрипт будет запущен. |
Ввод данных производят посредством однострочных полей. Их помещают в форму с помощью оператора <INPUT>: <INPUT TYPE=text NAME="na" SIZE=20>
Параметр TYPE определяет тип органа управления, вставленного в форму оператором <INPUT>. Если значение этого параметра равно text, вставляется однострочное поле, предназначенное для редактирования текстовой строки. Параметр NAME определяет имя поля, которое будет посылаться на сервер вместе с содержимым поля. И, наконец, параметр SIZE определяет ширину поля редактирования в символах.
Для отправки вводимых с помощью формы данных на сервер используют кнопки. Их вставляют в форму с помощью оператора <INPUT>: <INPUT TYPE=Submit VALUE="Ввод">
Значение TYPE, определяющее тип кнопки, здесь равно Submit, поскольку кнопка предназначена для передачи данных из формы на сервер. Надпись на кнопке определяют параметром VALUE.