1. Çü½Ä
Çü½Ä1) result= htmlquery(query_str)
Çü½Ä2) result= htmlquery(query_str, debug_file)
Çü½Ä3) result= htmlquery(query_str, debug_file, upload_dir)
Çü½Ä4) result= htmlquery(query_str, debug_file, upload_dir, overwrite_flag)
2. ±â´É: HTML query Çü½ÄÀÇ ¹®ÀÚ¿ÀÎ query_strÀ» Çؼ®ÇÏ¿© º¯¼ö¿¡ °ªÀ» ´ëÀÔÇÑ´Ù.
´ëÀԵǴ º¯¼öÀÇ °ªÀº ¸ðµÎ ¹®ÀÚ¿·Î 󸮵ȴÙ.
( setlocal(ON) À̸é Àü¿ª º¯¼ö, setlocal(OFF) À̸é Áö¿ª º¯¼ö¿¡ ´ëÀÔµÊ )
3. ¼³¸í
(1) ÇÔ¼ö¿¡ Àü´ÞÇÏ´Â ¸ðµç ÀÎÀÚ´Â ¹®ÀÚ¿ÀÌ¸ç ¼öÄ¡ÀÌ¸é ¹®ÀÚ¿·Î º¯È¯µÈ´Ù.
(2) query_strÀÇ °ªÀÌ ¼Ò´ë¹®ÀÚ ±¸ºÐ ¾øÀÌ "GET", "POST"À̸é HTML¹®¼ÀÇ form
tag¿¡¼ Àü´ÞµÇ´Â query¸¦ Çؼ®ÇÑ´Ù. À̶§ "GET"°ú "POST"´Â form tagÀÇ
method¿Í °°¾Æ¾ßÇϸç À¥ ¼¹ö¸¦ ¿î¿µÇÏ°í ÀÖÀ»¶§¿¡¸¸ ó¸®µÉ ¼ö ÀÖ´Ù.
(3) query_strÀÇ °ªÀÌ ¼Ò´ë¹®ÀÚ ±¸ºÐ ¾øÀÌ "COOKIE"À̸é Ŭ¶óÀ̾ðÆ®¿¡¼ Àü´Þ
µÇ´Â ÄíÅ°(cookie)¸¦ Çؼ®ÇÑ´Ù. query_strÀÌ "GET", "POST", "COOKIE"°¡
¾Æ´Ï¸é "º¯¼ö1=°ª1&º¯¼ö2=°ª2&...&º¯¼öN=°ªN" Çü½ÄÀÇ ¹®ÀÚ¿À̾î¾ß Çϸç
ÀÌ´Â °¢°¢ÀÇ º¯¼ö¿¡ °ªÀÌ ´ëÀԵǵµ·Ï Çؼ®ÇÑ´Ù.
(4) query_strÀÌ HTML query Çü½ÄÀ¸·Î ÀÎÄÚµùµÇ¾î À־ Çؼ®ÇÑ´Ù.
(5) debug_fileÀº query Çؼ® °á°ú¿¡ ´ëÇÑ ºÐ¼® ÆÄÀÏÀÇ À̸§À¸·Î °æ·Î¸íÀ»
Æ÷ÇÔÇÒ ¼ö ÀÖÀ¸¸ç, debug_fileÀÇ ÆÄÀÏ¿¡´Â ºÐ¼®µÈ query º¯¼ö¿Í ÃÑ °³¼ö¸¦
ÀúÀåÇÏ°í debug_file¿¡ ".org"¸¦ °áÇÕÇÑ ÆÄÀÏ¿¡´Â Àü´ÞµÈ queryÀÇ ¿øº»ÀÌ
ÀúÀåµÈ´Ù. queryÀÇ Àü´Þ¿¡ ÀÌ»óÀÌ ÀÖÀ» ¶§ debugging ¸ñÀûÀ¸·Î¸¸ »ç¿ëÇÏ´Â
°ÍÀÌ ÁÁÀ¸¸ç ÀÛ¼ºÇÑ ÇÁ·Î±×·¥À» Á¤»ó °¡µ¿ÇÒ ¶§¿¡´Â Á¦°ÅÇÏ´Â °ÍÀÌ ÁÁ´Ù.
(6) debug_fileÀÇ °ªÀÌ ³Î ½ºÆ®¸µ(Null string; ¹®ÀÚ¿ÀÇ ±æÀÌ°¡ 0ÀÓ, "")À̸é
debug ÆÄÀÏÀ» »ý¼ºÇÏÁö ¾Ê´Â´Ù.
(7) upload_dirÀº query_strÀÌ "POST"ÀÏ ¶§ (¹°·Ð HTMLÀÇ form tagÀÇ method°¡
"POST"À̾î¾ß ÇÔ) uploadÇÏ´Â ÆÄÀÏÀÌ ÀÖ´Ù¸é ±×°ÍÀ» ÀúÀåÇÒ °æ·Î¸íÀÌ´Ù.
upload_dirÀÌ »ý·«µÈ »óÅ¿¡¼ ÆÄÀÏÀ» uploadÇϸé "/tmp"¿¡ ÀúÀåµÈ´Ù.
(8) Çü½Ä4)¿¡¼ ÀÎÀÚ overwrite_flagÀº ÆÄÀÏ ¾÷ ·Îµå½Ã µ¿ÀÏÆÄÀÏÀÌ ÀÌ¹Ì Á¸Àç
ÇÒ °æ¿ì¿¡ °ãÃľµ°ÍÀÎÁö¸¦ °áÁ¤ÇÏ´Â °ÍÀÌ¸ç »ý·«ÇÏ¸é °ãÃľ²°Ô µÈ´Ù.
overwrite_flag= 1 -> ¾÷·Îµå ÆÄÀÏ Áߺ¹½Ã °ãÃľ¸(ÃʱⰪ)
overwrite_flag= 0 -> ¾÷·Îµå ÆÄÀÏ Áߺ¹½Ã (¼öÄ¡-ÆÄÀϸí) Çü½ÄÀ¸·Î ÀúÀåÇÔ
(Áï, ÆÄÀÏÀÇ ¼ø¹ø°ú '-' ±×¸®°í ÆÄÀϸí Çü½Ä)
(9) Çؼ®µÈ º¯¼öÀÇ °³¼ö¸¦ Á¤¼ö·Î result¿¡ µÇµ¹¸°´Ù.
¡Ø htmlquery("POST", "test.dbg") : HTML form tagÀÇ method°¡ "POST"À̸ç
query¸¦ debuggingÇϱâÀ§ÇØ "test.dbg"¿Í
"test.dbg.org"¸¦ »ý¼ºÇÑ´Ù.
¡Ø htmlquery("GET", "t.dbg") : HTML form tagÀÇ method°¡ "GET"À̸ç query¸¦
debuggingÇϱâÀ§ÇØ "t.dbg", "t.dbg.org" »ý¼º
¡Ø htmlquery("POST","","/work"); HTML form tagÀÇ method°¡ "POST"À̸ç ÆÄÀÏÀ»
uploadÇÒ ¶§ "/work"¿¡ ÀúÀåÇϵµ·Ï ÇÑ´Ù.
4. »ç¿ë¿¹
result= htmlquery("name=È«±æµ¿&kor=100&eng=100&mat=90");
printf(" À̸§= %s, ±¹¾î= %s, ¿µ¾î= %s, ¼öÇÐ= %s\n", name, kor, eng, mat);
print(" result= ", result);
------------------------------ [ Ãâ·Â°á°ú ] ------------------------------
À̸§= È«±æµ¿, ±¹¾î= 100, ¿µ¾î= 100, ¼öÇÐ= 90
result= 4
|