void GetQueryString(CString* qs);
Параметры:
Указатель на объект типа CString, в котором будет сохранена копия строки cgi-запроса.
Описание
Возвращает копию строки CGI-запроса.
Пример:
На входе имеем следующую строку cgi-запроса:
text=test&password=qw12&checkbox=on&radio=r2&textarea=
wew&list=2&list2=11&list2=1&list2=2&list2=0
Код программы:
#include <itcgi.h>
int main()
{
CString* cgi_query = CreateString();
GetQueryString(cgi_query);
printf("Content-type: text/plain\n\n);
printf("Получена следующая строка cgi-запроса %s\n", *cgi_query);
DeleteString(cgi_query);
}
На выходе:
Получена следующая строка cgi-запроса
text=test&password=qw12&checkbox=on&radio=r2&textarea=
wew&list=2&list2=11&list2=1&list2=2&list2=0
int GetParamByIndex(int index, CString* value);
int GetParamNameByIndex(int index, CString* name);
Возвращаемое значение:
1 - если всё прошло хорошо, 0 - если запрошенного
параметра нет или произошла ошибка иного рода.
Параметры:
index - задаёт номер параметра, значение которого необходимо вернуть
(отсчёт ведётся от нуля).
value - строка, в которую следует положить
значение.
name - строка, в которой следует сохранить имя параметра.
Описание
Возвращает значение параметра по его порядковому номеру.
Пример:
На входе имеем следующую строку cgi-запроса:
text=test&password=qw12&checkbox=on&radio=r2&textarea=
wew&list=2&list2=11&list2=1&list2=2&list2=0
Код программы:
#include <itcgi.h>
int main()
{
CString* name = CreateString();
CString* value = CreateString();
int i, count;
count = GetCount();
printf("Content-type: text/html\n\n);
printf("<html><table><caption>Полный список\
cgi-параметров</caption><tr><td\
bgolor="E5E5E5">Индекс<td bgolor="E5E5E5">Имя<td\
bgolor="E5E5E5">Значение");
for(i=0;i<count;i++)
{
GetParamByIndex(i, value);
GetParamNameByIndex(i, name);
printf("<tr><td>%d <td> %s <td> %s\n", i, *name, *value);
}
DeleteString(name);
DeleteString(value);
}
На выходе:
int GetFullSQLQuery(CString *sql_query, int n);
Возвращаемое значение: 1 в случае успешного выполнения функции.
Параметры:
sql_query - шаблон SQL-запроса, например INSERT INTO my_table (my_text, pwd) VALUES('%s', '%s')
n - с какого параметра CGI-запроса начинать вставлять значения
Описание
Формирует SQL-запрос к базе данных.
Пример:
На входе имеем следующую строку cgi-запроса:
text=test&password=qw12&checkbox=on&radio=r2&textarea=
wew&list=2&list2=11&list2=1&list2=2&list2=0
Код программы:
#include <itcgi.h>
int main()
{
CString* sql_query = CreateString();
CString_SetString(sql_query, "INSERT INTO my_table (my_text, pwd) VALUES('%s', '%s')");
int GetFullSQLQuery(sql_query, 0);
printf("Content-type: text/plain\n\n);
printf("Сформирован следующий SQL-запрос %s.\n", *sql_query);
DeleteString(sql_query);
}
На выходе:
Сформирован следующий SQL-запрос
INSERT INTO my_table (my_text, pwd) VALUES('test', 'qw12').
[an error occurred while processing this directive]