Примитивы, которые мы разрабатываем должны быть универсальны. Другими словами, они должны позволять работать с изменяемыми значениями параметров 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.
Совет. Если вы хотите очистить форму, то значение параметра TYPE должно быть равно Reset.
Окончательно, текст html формы для ввода параметра name примитива добавления данных будет иметь вид
<html> <body> <FORM METHOD=Get ACTION="insert.php3"> <P><INPUT TYPE=Text NAME=na SIZE=20><P> <P><INPUT TYPE=Submit VALUE="Ввод"></P> </FORM> </body> </html>
Последнее, что необходимо - это заменить строку примитива
$result = pg_Exec( $cnct, "INSERT INTO test values(1, 'Иванов')" );
на следующую
$result = pg_Exec( $cnct, "INSERT INTO test values(1, '$na')" );
Это позволит добавлять в таблицу БД строки с любыми значениями параметра name.
Назад | Содержание | Вперед