发表于 2009/9/1 10:55:59
前面提到,那个C源程序有点问题,其实就是HTML标签没有安装XHTML的规范来写,现在贴出更改后的mian函数
int main(void)
{
char *lenstr;
char input[MAXINPUT], data[MAXINPUT];
long len;
//printf("%s%c%c/n/n","Content-Type:text/html;charset=iso-8859-1",13,10);
printf("Content-Type:text/html/n/n");
printf("<html>/n");
printf("<head>/n<title>Response</title>/n</head>/n");
printf("<body>/n");
lenstr = getenv("CONTENT_LENGTH");
if(lenstr == NULL || sscanf(lenstr,"%ld",&len)!=1 || len > MAXLEN)
printf("<p>Error in invocation - wrong FORM probably.</p>/n");
else {
FILE *f;
fgets(input, len+1, stdin);
unencode(input+EXTRA, input+len, data);
f = fopen(DATAFILE, "a");
if(f == NULL)
printf("<p>Sorry, cannot store your data.</p>/n");
else
fputs(data, f);
fclose(f);
printf("<p>Thank you! Your contribution has been stored.</p>/n");
}
printf("</body>/n</html>/n");
return 0;
}
{
char *lenstr;
char input[MAXINPUT], data[MAXINPUT];
long len;
//printf("%s%c%c/n/n","Content-Type:text/html;charset=iso-8859-1",13,10);
printf("Content-Type:text/html/n/n");
printf("<html>/n");
printf("<head>/n<title>Response</title>/n</head>/n");
printf("<body>/n");
lenstr = getenv("CONTENT_LENGTH");
if(lenstr == NULL || sscanf(lenstr,"%ld",&len)!=1 || len > MAXLEN)
printf("<p>Error in invocation - wrong FORM probably.</p>/n");
else {
FILE *f;
fgets(input, len+1, stdin);
unencode(input+EXTRA, input+len, data);
f = fopen(DATAFILE, "a");
if(f == NULL)
printf("<p>Sorry, cannot store your data.</p>/n");
else
fputs(data, f);
fclose(f);
printf("<p>Thank you! Your contribution has been stored.</p>/n");
}
printf("</body>/n</html>/n");
return 0;
}