以下のhtmlコードがあります。
<html>
<head><title>OPTIONS</title></head>
<body>
<p>Choose schedule to generate:</p>
<form action='cgi-bin/mp1b.cgi' method="get">
<input type=checkbox value='tfield' name=on />Teacher<input type=text name="teacher" value=""/><br>
<input type=checkbox value='sfield' name=on />Subject<input type=text name="subject" value=""/><br>
<input type=checkbox value='rfield' name=on />Room<input type=text name="room" value=""/><br>
<input type=submit value="Generate Schedule"/>
</form>
</body>
</html>
そして、Cで書かれたこのCGIスクリプトがあります:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(void)
{
char *data = malloc(1024);
char teacher[1024];
char subject[1024];
char room[1024];
printf("Content-type:text/html\n\n");
printf("<html><body>");
data = getenv("QUERY_STRING");
if(data){
sscanf(data,"teacher=%s&subject=%s&room=%s",teacher,subject,room);
printf("%s,%s,%s",teacher,subject,room);
}
printf("</body></html>");
return 0;
}
送信ボタンをクリックするたびに出力されます
(null),ã…,œí
コードの何が問題になっていますか? ありがとう!
編集済み: コードは編集されていますが、次のように出力されます。
Smith&subject=Physics&room=部屋,Xøm·l,