4.3 FORM
FORM Tag´Â HTML¹®¼¾È¿¡ »ç¿ëÀÚÀÇ ÀԷ»çÇ×À» ¼ö¿ëÇÒ ¼ö ÀÖ´Â ¹öư, ¶óµð¿À ¹öư, ¼±Åùڽºµî°ú
°°Àº °ÍµéÀ» Ãâ·ÂÇÒ ¼ö ÀÖ°Ô µÈ´Ù. ÀÌ·¯ÇÑ È¸éÀÇ ¿ä¼Òµé·ÎºÎÅÍ »ç¿ëÀÚ ÀÔ·ÂÀ» ¾ò¾î¼ ¼¹ö·Î Àü´ÞÇÏ°Ô µÈ´Ù.
¾Æ·¡ÀÇ ¹®¹ý¿¡¼ ACTIONºÎºÐ¿¡ ÀÔ·ÂµÈ ºÎºÐÀÌ ¹Ù·Î ½ÇÇàÆÄÀÏÀÎ CGIÆÄÀÏÀÇ À̸§ÀÌ´Ù. ±× ½ÇÇàÆÄÀÏ¿¡ »ç¿ëÀÚ°¡
ÀÔ·ÂÇÑ Á¤º¸°¡ Àü´ÞµÇ´Â °ÍÀÌ´Ù.
- ±âº» ¹®¹ý
<FORM METHOD="POST" ACTION="cgi-program-name">
<INPUT TYPE=type NAME=name VALUE=value>
......................
<INPUT TYPE=type NAME=name VALUE=value>
</FORM>
|
- METHOD
ºê¶ó¿ìÀú°¡ »ç¿ëÀÚ°¡ FORMÅÂ±× ¾È¿¡ ÀÛ¼ºÇÑ ³»¿ëÀ» À¥ ¼¹ö·Î Àü´ÞÇÏ´Â ¹æ¹ý¿¡´Â
GET, PUT, HEAD, DELETEµîÀÌ
ÀÖÀ¸³ª ÀÌÁß¿¡ ½ÇÁ¦·Î »ç¿ëµÇ´Â ¹æ¹ýÀº GET, POST¹æ½Ä »ÓÀÌ´Ù. ±×·³ GET¹æ½Ä°ú POST¹æ½Ä¿¡ ´ëÇØ¼ »ìÆìº¸µµ·Ï ÇÏÀÚ.
- GET : ÄÚµåÈ µÇ¾î ¼¹ö¿¡ Àü´ÞµÉ ¶§, ȯ°æº¯¼ö¿¡ ÀúÀåÀÌ µÈ´Ù. QUERY_STRINGÀ̶ó´Â ȯ°æº¯¼ö¿¡
ÀúÀåµÈ »óÅ·ΠCGI ÇÁ·Î±×·¥ÀÌ ¼öÇàµÇ´Â °ÍÀÌ´Ù. C¾ð¾î·Î ÀÛ¼ºÇÒ ¶§´Â ´ÙÀ½°ú °°ÀÌ Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ´Ù.
char str[LNG];
str = getenv("QUERY_STRING");
±×·¯³ª, ȯ°æº¯¼ö¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Â ±æÀ̰¡ ÇÑÁ¤µÇ¾îÀֱ⠶§¹®¿¡ ±ä ¹®ÀÚ󸮿¡ ºÎÀûÇÕÇϸç, »ç¿ëÀÚ ºê¶ó¿ìÀúÀÇ ÁÖ¼Ò¶õ¿¡
»ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ³»¿ëÀÌ ±×·¡µµ Ãâ·ÂµÇ¾î ºÏ¸¶Å© µÉ¼öÀÖ´Â ´ÜÁ¡µµ °¡Áö°í ÀÖ´Ù.
- POST : browser°¡ º¸³»´Â Á¤º¸°¡ Ç¥ÁØ ÀÔ·Â(stdin)À» ÅëÇØ¼ CGIÇÁ·Î±×·¥À¸·Î Á÷Á¢ Àü´ÞµÈ´Ù.
°¡Àå º¸ÆíÀûÀÎ ¹æ½ÄÀ¸·Î ÀÔ·ÂµÈ ±æÀÌ¿¡ Á¦ÇÑÀÌ ¾ø´Ù. Áï, C¾ð¾îÀÇ °æ¿ì ´ÙÀ½°ú °°Àº ¹æ½ÄÀ¸·Î ÀоîµéÀÌ¸é µÈ´Ù.
char str[LNG];
fgets(str, LNG, fp);
- EXAMPLE
- FILEUPLOAD
¾Õ¿¡¼ FORMÀÇ ¼Ó¼ºÁß¿¡¼ ENCTYPEÀÌ ºüÁ® ÀÖ´Ù. Default·Î application/x-www-form-urlencodedÇüÅÂÀÇ
MIME TypeÀ¸·Î À¥ ¼¹ö·Î Àü´ÞµÈ´Ù. ±×·¯³ª, INPUTÀÇ TYPE=fileÀÎ °æ¿ì¿¡´Â ÆÄÀÏÀÌ ºê¶ó¿ìÀú·ÎºÎÅÍ
À¥¼¹ö·Î Àü´ÞµÇ±â ¶§¹®¿¡ ±×¶§´Â ENCTYPEÀ» multipart/form-data·Î ÁöÁ¤Çؾß
ÆÄÀÏÀÌ Á¦´ë·Î Àü´ÞµÈ´Ù. À¥ ¼¹ö¿¡¼ À̸¦ ó¸®ÇÏ´Â CGIÇÁ·Î±×·¥À» °³¹ßÇÒ¶§ ÀÌ¿¡ ¸Â°Ô ÀûÀýÇÑ ¹æ¹ýÀ¸·Î
ó¸®Çؾ߸¸ °¡´ÉÇÏ´Ù´Â Á¡.
- Last Update : 2001.6.19 by Deadfire(http://www.deadfire.net)
|
|
|