char* fileContentLength;
int nContentLength;
fileContentLength = getenv("CONTENT_LENGTH");
if(fileContentLength == NULL)
return -1;
nContentLength = atoi(fileContentLength);
if(nContentLength == 0)
return -1;
data = (char*) malloc(nContentLength+1);
if(data == NULL)
return -1;
memset(data, 0, nContentLength+1);
if(fread(data, 1, nContentLength, stdin) == 0)
return -1;
if(ferror(stdin))
Это код cgi cgi для получения данных формы в массив символов. После выполнения этого кода я получил приведенный ниже результат к переменной «данные».получить данные формы, используя Cgicc
f0 = fname0 & l0 = lname0 & f1 = fname1 & l1 = lname1 & f2 = fname2 & l2 = lname2 & f3 = & l3 =
Теперь я хочу использовать cgicc для извлечения данных как описано выше в одном массиве символов. Но с помощью cgicc я могу получить значение конкретного элемента. Но я хочу получить все значения элементов в одном массиве символов. Как я могу сделать это с помощью cgicc?
thats странный C++ !!! mallocing !! – perilbrain
Я получил все данные в массиве символов, используя приведенный выше код. Но я хочу использовать Cgicc для получения конкретных данных элемента. Поэтому я объявил переменную для Cgicc, как показано ниже Cgicc formData; Если бы я добавил этот код, я получил завершение программы по адресу if (fread (data, 1, nContentLength, stdin) == 0). Если я прокомментирую вышеуказанное объявление, его рабочий штраф. Я не знаю, что здесь происходит при объявлении переменной для cgicc. –
getpostdata - это вариант, но он возвращает MIME – perilbrain