¹®¼Ãâó: À̸íÇå °æ¿µ½ºÄð http://www.emh.co.kr/xhtml/cookies.html
ÄíŰ(Cookies)´Â À¥ ½ÎÀÌÆ®¸¦ ¸¸µå´Â ÂÊ¿¡¼ »ç¿ëÀÚ¿Í °ü·ÃµÈ Á¤º¸¸¦ »ç¿ëÀÚÀÇ Çϵåµð½ºÅ©¿¡ ÀúÀåÇØ µÐ °ÍÀ» ¶æÇÕ´Ï´Ù. ¿©±â¼ ÁÖÀÇÇÒ ´Ü¾î´Â 'Çϵåµð½ºÅ©'ÀÔ´Ï´Ù. »ç¿ëÀÚÀÇ Çϵåµð½ºÅ©¿¡ ÀÛÀº ÅØ½ºÆ® ÆÄÀÏ·Î ÀúÀåÀ» ÇØµÎ±â ¶§¹®¿¡ »ç¿ëÀÚ°¡ ÄÄÇ»Å͸¦ ²°´Ù°¡ ÄÑ´õ¶óµµ ¾ðÁ¦µçÁö Çϵåµð½ºÅ©¿¡ ÀúÀåµÈ ÄíŰ ÆÄÀÏÀ» Àоî¿Í¼ °Å±â¿¡ ±â·ÏÇØ ³õÀº ³»¿ëÀ» Ȱ¿ëÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù.
±×·¸´Ù¸é ¿Ö ´Ù¸¥ °÷µµ ¾Æ´Ñ »ç¿ëÀÚÀÇ Çϵåµð½ºÅ©¿¡ Á¤º¸¸¦ ÀúÀåÇÒ±î¿ä?
±×°ÍÀº HTTP ÇÁ·ÎÅäÄÝÀÌ 'stateless' ÇÁ·ÎÅäÄÝÀ̱⠶§¹®ÀÔ´Ï´Ù. http·Î ³ª´©´Â ´ëÈ¿¡¼ ¼³¸íÇÑ °Íó·³, À¥ ºê¶ó¿ìÁ®°¡ À¥ ½á¹ö¿¡ Á¢¼ÓÀ» ÇØ¼ ¾î¶² ¹®¼³ª ÆÄÀÏÀ» ¿äûÇϸé À¥ ½á¹ö´Â ¿äû ¹ÞÀº ³»¿ëÀ» º¸³»ÁØ ´ÙÀ½ Á¢¼ÓÀ» ²÷½À´Ï´Ù. Áï, Á¢¼ÓÀ» ÇÑ '»óÅÂ(state)'°¡ Áö¼ÓµÇÁö ¾Ê°í ¿äûµÈ °Í¸¸ ó¸®ÇÑ µÚ ¿¬°áÀ» ²÷´Â °ÅÁÒ. ±×·¯¹Ç·Î À¥ ¼¹ö´Â ÀÏ´Ü ¿äûµÈ ³»¿ëµéÀ» Ŭ¶óÀÌ¾ðÆ®¿¡ º¸³»°í ³ª¸é ±× µÚ »ç¿ëÀÚ°¡ Á¢¼ÓÀ» Çϰí ÀÖ´ÂÁö ¾î¶²Áö ¾Ë ¼ö°¡ ¾ø½À´Ï´Ù. ³ª¾Æ°¡, ¿¹Àü¿¡ Á¢¼ÓÇß´ø Ŭ¶óÀÌ¾ðÆ®°¡ ¶Ç Á¢¼ÓÀ» ÇÑ °ÍÀÎÁö ¾Æ´ÑÁö µîÀº ´õ´õ¿í ¾Ë ¼ö ¾ø½À´Ï´Ù. ±×·±µ¥ À¥ ½ÎÀÌÆ®¸¦ ¿î¿ëÇÏ´Â Ãø¿¡¼´Â ¾î¶² »ç¿ëÀÚ°¡ ´Ù½Ã ¹æ¹®À» Çß´ÂÁö¿Í °°Àº Á¤º¸°¡ Àý½ÇÈ÷ ÇÊ¿äÇß°í ¹Ù·Î ÀÌ·± Á¡À» ÇØ°áÇϱâ À§ÇØ, Áï statelessÇÑ httpÀÇ Æ¯Â¡À» Ä¿¹öÇϱâ À§ÇØ µîÀåÇÑ ¾ÆÀ̵ð¾î°¡ ÄíŰ(Cookie)ÀÔ´Ï´Ù.
ÄíŰÀÇ ¾ÆÀ̵ð¾î´Â °£´ÜÇÕ´Ï´Ù. Á¢¼ÓÇÑ Å¬¶óÀ̾ðÆ®ÀÇ Çϵåµð½ºÅ©¿¡ Àû´çÇÑ Á¤º¸¸¦ ÀúÀåÇØ µÒÀ¸·Î½á ¶Ç ±× Ŭ¶óÀÌ¾ðÆ®°¡ Á¢¼ÓÇÑ °æ¿ì ¾ðÁ¦µçÁö Çϵåµð½ºÅ©¿¡ ÀúÀåµÈ Á¤º¸¸¦ ÀÐ¾î µé¿©¼ ±× »ç¿ëÀÚ¸¦ ÀνÄÇÒ ¼ö ÀÖ´Â °ÍÀÔ´Ï´Ù. '»óÅÂ'¿¡ °üÇÑ Á¡°ËÀ» ¾ðÁ¦µçÁö ÇÒ ¼ö ÀÖ´Â °ÍÀÌÁÒ.
ÄíŰ¿¡ ÀúÀåµÇ´Â ³»¿ëÀº õÂ÷¸¸º°ÀÔ´Ï´Ù. °£´ÜÇϰԴÂ, »ç¿ëÀÚ°¡ ¾î¶² ÆäÀÌÁö¸¦ Àоú°í, ·Î±×ÀÎ ¾ÆÀ̵𰡠¹¹°í, À̸ÞÀÏ ÁÖ¼Ò°¡ ¹¹°í µîÀ» ±â·ÏÇÒ ¼öµµ ÀÖ°í, »ç¿ëÀÚ°¡ ¾î¶² ¹°Ç°À» ÁÖ¹®Çß´ÂÁö, ip ÁÖ¼Ò°¡ ¹¹°í, ¾î¶² ½ÎÀÌÆ®¸¦ °ÅÃļ ¿ì¸® ½ÎÀÌÆ®·Î ¿Ô´ÂÁö, ¶Ç´Â ¼¹ö¿¡¼ °¢ Ŭ¶óÀÌ¾ðÆ®¸¦ ½Äº°ÇÒ Æ¯º°ÇÑ Á¤º¸¸¦ ±â·ÏÇÏ´Â µî, °ÅÀÇ ¸ðµç ÇüÅÂÀÇ Á¤º¸¸¦ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ Ã³Áö¿¡¼´Â »ç½Ç ±âºÐ³ª»Ü ¼ö ÀÖ½À´Ï´Ù. ³ªµµ ¸ð¸£°Ô ³ªÀÇ ÇൿÀÌ ÇϳªÇϳª ±â·ÏµÇ¾î 'ÆÄÀÏ'·Î ÀúÀåµÇ°í ÀÖ°í, ±× ÆÄÀÏÀÌ ´Ù¸¥ °÷µµ ¾Æ´Ñ '³»' ÄÄÇ»ÅÍ¿¡ ³ªµµ ¸ð¸£°Ô ÀúÀåµÈ´Ù´Â °ÍÀº º°·Î ÁÁÀº ´À³¦Àº ¾Æ´ÏÁÒ.
ÄíŰ ÆÄÀÏÀº »ç¿ëÀÚ°¡ ÄÄÇ»Å͸¦ ²ôµç Äѵç Çϵåµð½ºÅ©¿¡ (»ó´ç ±â°£) ÀúÀåµÇ¾î Àֱ⠶§¹®¿¡, ¾ðÁ¦µçÁö »ç¿ëÀÚ°¡ ´Ù½Ã ¾î¶² À¥ ½ÎÀÌÆ®¿¡ Á¢¼ÓÇϸé ÄíŰ¿¡ ÀúÀåÇØ ³õÀº Á¤º¸¸¦ ÀÐ¾î µé¿©¼ ¿©·¯ ÇüÅÂÀÇ '¸ÂÃãȵÈ' ¼ºñ½º¸¦ Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. À̸¦ Å׸é, ·Î±×ÀÎÀ» ÇÑ ¹ø¸¸ ÇÏ¸é ±× ´ÙÀ½ºÎÅÍ ¾È ÇØµµ µÈ´ÙµçÁö, ¾î¶² ÆäÀÌÁö¸¦ "¸î ¹ø º¸¼Ì±º¿ä" ¶ó°í ¾Ë·ÁÁشٵçÁö µîÀÌ °¡´ÉÇÕ´Ï´Ù.
ÄíŰÀÇ ÀÌ·± µ¶Æ¯ÇÑ Á¡Àº °á±¹ °³ÀÎ Á¤º¸ À¯Ãâ¿¡ °üÇÑ ¹®Á¦¸¦ ºÒ·¯ ÀÏÀ¸Åµ´Ï´Ù. ¿Ö³ÄÇϸé, »ç¿ëÀÚ Çϵåµð½ºÅ©¿¡ ±× »ç¿ëÀÚ°¡ ¾î¶² ½ÄÀ¸·Î À¥ ½áÇÎÀ» Çϰí ÀÖ´ÂÁö, ¾î¶² ¹°°ÇÀ» ±¸ÀÔÇß´ÂÁö, À̸ÞÀÏ ÁÖ¼Ò´Â ¹«¾ùÀÎÁö µîÀÇ °³ÀÎÁ¤º¸±îÁö ÀúÀåµÉ ¼öµµ Àֱ⠶§¹®¿¡ ´©±º°¡ ¾ÇÇÑ ¸¶À½À» ǰ°í Äí۸¦ µÚÁö¸é ¹Î°¨ÇÑ Á¤º¸°¡ À¯ÃâµÉ ¼öµµ ÀÖÀ» °ÍÀ̱⠶§¹®ÀÔ´Ï´Ù.
±×·¡¼ À¥ ºê¶ó¿ìÁ®¿¡´Â ´ë°³ Äí۸¦ Ç×»ó ¹Þ¾ÆµéÀÏ °ÍÀ̳Ä, ¾Æ´Ï¸é ¸Å¹ø ´ëÈ»óÀÚ¸¦ ¶ç¿ö¼ ¹°¾îº¸±æ ¿øÇÏ´À³Ä, ±×·¸Áö ¾ÊÀ¸¸é Äí۸¦ Àý´ë ¹Þ¾ÆµéÀÌÁö ¾Ê´À³Ä¸¦ ¼±ÅÃÇÏ´Â ºÎºÐÀÌ ÀÖ½À´Ï´Ù¸¸, ºÒÇàÈ÷µµ ±âº» ¼³Á¤Àº ¸ðµç Äí۸¦ ´Ù ¹Þ¾ÆµéÀÌ´Â °ÍÀ¸·Î µÇ¾î ÀÖ°í, ¶Ç, ´ë°³ÀÇ ¿£µåÀ¯Á®´Â Äí۶õ °ÍÀÌ ÀÖ´ÂÁöµµ ¸ð¸¥ ä ÀÚ±â Á¤º¸¸¦ ÇÏµå µð½ºÅ©¿¡ ÀúÀåÀ» Çϰí ÀÖ½À´Ï´Ù. °Ô´Ù°¡, Äí۸¦ ²¨³õÀ¸¸é ½ÎÀÌÆ® ³»¿ëÀ» º¸´Âµ¥ ÁöÀåÀ» ÃÊ·¡ÇÏ°Ô ÇÏ´Â ½ÎÀÌÆ®µµ ¾ÆÁÖ ¸¹±¸¿ä.
±×·¸´Ù¸é ÄíŰ´Â ¾îµð ÀÖÀ»±î¿ä?
windows 2000 À¯Á®´Â C: ¾ÈÀÇ "Documents and Settings" Æú´õ ¼Ó¿¡ µé¾î ÀÖ´Â ÀÚ±â Æú´õ(·Î±×ÀÎ À¯Á® Æú´õ) ¾È¿¡ º¸¸é,
"Cookies"¶ó´Â Æú´õ°¡ ÀÖ½À´Ï´Ù. ¿¾î º¸¸é ÀÌ»óÇÑ .txt ÆÄÀϵéÀÌ ¸¹ÀÌ µé¾î ÀÖ½À´Ï´Ù. À©98 Àº.. Àß »ý°¢ÀÌ ¾È ³ª´Âµ¥, ¾Æ¸¶ C:ÀÇ System Æú´õÀΰ¡, System32ÀÌ´ø°¡¿¡ "Cookies" Æú´õ°¡ ÀÖÀ» °ÍÀÔ´Ï´Ù.
ÀÌ ÄíŰ ÆÄÀϵéÀº ÀÎÅÍ³Ý ÀͽºÇ÷η¯¿¡¼ Áö¿ï ¼ö ÀÖ½À´Ï´Ù.
[µµ±¸] --> [ÀÎÅͳݿɼÇ] ¸Þ´º¸¦ ¼±ÅÃÇØº¸¸é ¾Æ·¡ ±×¸²Ã³·³ Äí۸¦ Áö¿ï ¼ö ÀÖ´Â ºÎºÐÀÌ ³ª¿É´Ï´Ù.

ÀÌÁ¦ Äí۸¦ ½ÇÁ¦ ¾î¶»°Ô ¸¸µå´ÂÁö, ÀÚ¹Ù½ºÅ©¸³Æ® ¿¹Á¦¸¦ ÅëÇØ ¾Ë¾Æº¾½Ã´Ù.
Äí۸¦ ±â·ÏÇϰí Àд °ÍÀº ¼¹ö Ãø¿¡¼ ÇÒ ¼öµµ ÀÖ°í Ŭ¶óÀÌ¾ðÆ® Ãø¿¡¼ ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ¼¹ö ÂÊ¿¡¼ ÇÑ´Ù¸é ÆÞÀ̳ª PHP, ASP °°Àº server-side scripting ¾ð¾î¸¦ ÀÌ¿ëÇØ¼ httpÀÇ Çì´õ¸¦ ÅëÇØ Äí۸¦ ±â·ÏÇÕ´Ï´Ù. Ŭ¶óÀÌ¾ðÆ® ÂÊ¿¡¼ ÇÑ´Ù¸é ÀÚ¹Ù½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇØ¼ ¸¸µì´Ï´Ù. ÀÌ ±Û¿¡¼´Â ÀÚ¹Ù½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇÑ °ÍÀ» ´Ù·ì´Ï´Ù.
Äí۸¦ ¸¸µå·Á¸é ¹®ÀÚ¿ ó¸®¿Í °ü·ÃµÈ ³»¿ëÀ» Á¶±Ý ¾Ë¾Æ¾ß ÇÕ´Ï´Ù. ÇÊ¿äÇÑ ³»¿ëÀº indexOf()ÀÇ È°¿ë, ±×¸®°í split()ÀÇ È°¿ëÀÔ´Ï´Ù.
indexOf() ´Â °ýÈ£¾ÈÀÇ ¹®ÀÚ°¡ ¾î¶² ¹®ÀÚ¿ÀÇ ¸î ¹øÂ°¿¡ ³ª¿À´Â°¡¸¦ ¾Ë·ÁÁÖ´Â ÇÔ¼öÀÔ´Ï´Ù. ¿¹¸¦ µé¾î,
var name="myonghon";
var position1 = name.indexOf("m");
ÀÌ °æ¿ì position1 º¯¼ö¿¡´Â 0ÀÌ ´ã±é´Ï´Ù.
(mÀÌ myonghonÀ̶ó´Â ¹®ÀÚ¿ÀÇ Ã¹¹øÂ°ÀÚ¸®¿¡ ³ª¿À¹Ç·Î 0ÀÔ´Ï´Ù. ÄÄÇ»ÅÍ´Â 0ºÎÅÍ ¼Á´Ï´Ù)
°°Àº ½ÄÀ¸·Î,
var position2 = name.indexOf("g");
ÀÇ °æ¿ì¿£ position2 º¯¼ö¿¡ 4°¡ ´ã±é´Ï´Ù.
"m"ó·³ ÇÑ ÀÚ°¡ ¾Æ´Ï¶ó ÇÑ ´Ü¾î¸¦ ÀÔ·ÂÇÏ´Â °æ¿ì ±× ´Ü¾î ù±ÛÀÚÀÇ À§Ä¡¸¦ ¸®ÅÏÇÕ´Ï´Ù. ¿¹¸¦ µé¾î,
var positon3 = name.indexOf("hon");
ÀÇ °æ¿ì position3 º¯¼ö¿¡´Â 5°¡ ´ã±é´Ï´Ù.
¸¸¾à ã´Â ¹®ÀÚ°¡ ¾øÀ¸¸é -1À» ¸®ÅÏ ÇÕ´Ï´Ù.
¾î¶² ¹®ÀÚ¿¿¡ ƯÁ¤ ¹®ÀÚ°¡ ÀÖ´ÂÁö ¾ø´ÂÁö ¾Ë¾Æº¼ ¶§ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
var address ='';
while (address.indexOf("@") == -1) {address = prompt("À̸ÞÀÏ ÁּҴ¿ä?", "")};
À§¿Í °°ÀÌ Çϸé, @°¡ µé¾î°£ ³»¿ëÀ» ÀÔ·ÂÇÒ¶§±îÁö °è¼Ó À̸ÞÀÏ ÁÖ¼Ò¸¦ ¹¯½À´Ï´Ù. ¹°·Ð, À̸ÞÀÏ ÁÖ¼ÒÀÇ À¯È¿¼º È®ÀÎÀº À§¿Í °°ÀÌ °£´ÜÈ÷ µÇ´Â °ÍÀÌ ¾Æ´Õ´Ï´Ù. »ç½ÇÀº ¾öû³ª°Ô º¹ÀâÇÕ´Ï´Ù. ^_^
±× ´ÙÀ½, split()Àº ¾î¶² ¹®ÀÚ¿À» split() °ýÈ£ ¾È¿¡ µé¾îÀÖ´Â °ÍÀ» ±âÁØÀ¸·Î Âɰ³¼ ±× °á°ú¸¦ ¹è¿·Î ¸®ÅÏÇÏ´Â °Ì´Ï´Ù.
var name="george&paul&john&lingo";
var beatle = name.split("&");
¶ó°í Çϸé, beatle[0]¿¡´Â george°¡, beatle[1]¿¡´Â paulÀÌ, beatle[2]¿¡´Â johnÀÌ µé¾î °¡°Ô µË´Ï´Ù.
½±ÁÒ?
ÀÌÁ¦ µµ±¸´Â ´Ù °®ÃèÀ¸´Ï, Äí۸¦ °ø·«ÇØ º¾½Ã´Ù. Äí۸¦ ¸¸µå´Â °Ç Á¤¸» ½±½À´Ï´Ù.
º¹ÀâÇÏ°Ô µé¾î°¡¸é ¸¹Àº ³»¿ëÀÌ ÀÖÁö¸¸, ÀÌ ±Û¿¡¼ ÇÊ¿äÇÑ ³»¿ë¿¡ ÇØ´çÇÏ´Â ºÎºÐÀº Á¤¸» °£´ÜÇÕ´Ï´Ù. ÄíŰ´Â ´ÙÀ½°ú °°Àº ÇüŸ¦ °®´Â ¹®ÀÚ¿¿¡ ´Ù¸§ ¾Æ´Õ´Ï´Ù.
ÄíŰÀ̸§ = Äí۰ª
ÄíŰ À̸§Àº ¿ì¸® ¸¶À½´ë·Î Á¤ÇÏ¸é µË´Ï´Ù. ÄíŰ °ªÀº ÄÞ¸¶, ÄÝ·Ð, °ø¹é, ¼¼¹ÌÄÝ·ÐÀÌ ¿À¸é ¾ÈµÈ´Ù´Â ±ÔÄ¢¸¸ ÁöŰ¸é µË´Ï´Ù. ÄÝ·ÐÀ̳ª °ø¹éÀº escape() ÇÔ¼ö¸¦ ÀÌ¿ëÇϸé ÀûÀýÇÑ ÇüÅ·Πº¯ÇüµË´Ï´Ù.
ÀÌ·¸°Ô ÄíŰ À̸§¿¡ ÄíŰ °ªÀ» ÇÒ´çÇÑ ´ÙÀ½,
document.cookie=ÄíŰÀ̸§;
ÀÌ·¸°Ô¸¸ ÇÏ¸é ±× html ¹®¼¿¡ ÇØ´çÇÏ´Â Äí۰¡ ¼ÂÆÃµË´Ï´Ù.
<head>
<script name="javascript">
function readCookie() {
var cookie2 = document.cookie;
my_cookie = unescape(cookie2);
var cookie_value = my_cookie.split(":");
var name2 = cookie_value[1];
alert("´ç½ÅÀ̸§Àº " + name2 + "À̱º¿ä");
}
</script>
</head>
<body onload="readCookie()">
setCookie ÇÔ¼öÀÇ µÎ¹øÂ°ÁÙÀº À̸§À» ¹¯´Â ´ëÈ»óÀÚ¸¦ ¶ç¿öÁÖ´Â °ÍÀÔ´Ï´Ù. ¿¹¸¦ µé¾î myonghonÀ̶ó°í ÀÔ·ÂÇß´Ù¸é, ±× ´ÙÀ½ ÁÙÀº my_cookie¶ó´Â º¯¼ö¿¡ cookie1=name%3myonghonÀ̶ó°í ÀúÀåÇÏ°Ô µË´Ï´Ù. name:myonghonÀ̶ó´Â ¹®ÀÚ¿ÀÌ escape() ÇÔ¼ö¿¡ ÀÇÇØ¼ name%3myonghonÀ¸·Î ¹Ù²î´Â °Ì´Ï´Ù. escape() ÇÔ¼ö°¡ ÄÝ·ÐÀ» "%3"À¸·Î ¹Ù²Û °ÍÀÔ´Ï´Ù. ±×·±µ¥, ÀÌ·± °Ç ÀüÇô ½Å°æ¾µ ÇÊ¿ä¾ø½À´Ï´Ù. ±×³É ÄÝ·ÐÀ̳ª °ø¹é µîÀÌ µé¾î°¡ ÀÖ´Â ¹®ÀÚ¿Àº escape() ÇÔ¼ö¿¡´Ù°¡ ³Ö¾î Áà¾ß ÄíŰ¿¡ ÀúÀåµÈ´Ù´Â °Í¸¸ ±â¾ïÇÏ¸é µË´Ï´Ù.
±× ´ÙÀ½ ÁÙÀº my_cookie¸¦ ±× ¹®¼ÀÇ ÄíŰ·Î ÁöÁ¤Ç϶ó´Â ³»¿ëÀÔ´Ï´Ù.
<body> Åױ׿¡´Â onload="setCookie()" ¸¦ ³Ö¾î¼, ±× ÆäÀÌÁö°¡ ·ÎµùµÇ¸é¼ ÀÚµ¿À¸·Î setCookie() ÇÔ¼ö°¡ È£ÃâµÇµµ·Ï ÇÏ¸é µË´Ï´Ù.
´Ù ÀÔ·ÂÇßÀ¸¸é ÀÌ html ¹®¼¸¦ À¥ ºê¶ó¿ìÁ®¿¡¼ ºÒ·¯º¸¼¼¿ä.
À̸§À» ¹¯´Â ´ëÈ»óÀÚ°¡ ¶ã °Ì´Ï´Ù. ¿¹¸¦ µé¾î "myonghon"À̶ó°í ÀÔ·ÂÀ» ÇÏ°Ô µÇ¸é,
ÄíŰ ÆÄÀÏ¿¡´Â cookie1=name%3myonghonÀ̶ó°í ÀúÀåÇÏ°Ô µË´Ï´Ù.
cookie1Àº ÄíŰ À̸§, = ´ÙÀ½ ºÎºÐÀº ÄíŰ °ªÀÔ´Ï´Ù.
ÀÌÁ¦ ÀÌ Äí۰¡ Á¤¸»·Î ÀúÀåµÇ¾ú´ÂÁö È®ÀÎÇØ º¾½Ã´Ù. Äí۸¦ ÀÐ¾î µéÀÌ´Â °Íµµ ±²ÀåÈ÷ °£´ÜÇÕ´Ï´Ù. À§¿¡¼ Çß´ø °úÁ¤À» ¹Ý´ë·Î ÇÏ¸é µË´Ï´Ù.
»õ·Î html ¹®¼¸¦ Çϳª ¿°í ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇØ º¸¼¼¿ä.
<head>
<script name="javascript">
function readCookie() {
var cookie2 = document.cookie;
my_cookie = unescape(cookie2);
var cookie_value = my_cookie.split(":");
var name2 = cookie_value[1];
alert("´ç½ÅÀ̸§Àº " + name2 + "À̱º¿ä");
}
</script>
</head>
<body onload="readCookie()">
ÇÔ¼öÀÇ µÎ ¹øÂ° ÁÙÀº Äí۸¦ ÀÐ¾î µé¿©¼ cookie2¶ó´Â º¯¼ö¿¡ ÇÒ´çÇÕ´Ï´Ù. ¾Æ±î ÀúÀåÇß´ø my_cookie ¾È¿¡ ´ã°ÜÀÖ´ø ÄíŰ °ª, name%3myonghonÀÌ cookie2 º¯¼ö¿¡ ´ã±â°Ô µË´Ï´Ù.
¼¼ ¹øÂ° ÁÙÀº escape()¸¦ ÅëÇØ¼ º¯È¯Çß´ø °ø¹éÀ̳ª ÄÝ·Ð µîÀ» ´Ù½Ã ¿ø»óÅ·Π(%3-->:) µÇµ¹¸³´Ï´Ù. unescape()À̹ǷΠescape()ÀÇ ¹Ý´ëÀÔ´Ï´Ù. (±×·±µ¥, "unescape"¶õ ¿µ¾î ´Ü¾î´Â ¾ø½À´Ï´Ù. ;-)
³× ¹øÂ° ÁÙÀº ¿ø»óÅ·ΠµÇµ¹·Á³õÀº °ªÀ» ":"À» Áß½ÉÀ¸·Î ³ª´©°í(split)
±× ´ÙÀ½ ÁÙ¿¡¼´Â ³ª´« °ª Áß¿¡ 2¹øÂ° °ª, Áï ÄÝ·Ð ´ÙÀ½°ª (myonghon)À» name2 º¯¼ö¿¡ ´ã½À´Ï´Ù.
¸¶Áö¸· ÁÙÀº name2¿¡ ÀÖ´Â À̸§À» ÀÌ¿ëÇØ¼ °æ°í »óÀÚ¸¦ ¶ç¿ó´Ï´Ù.
¿ª½Ã óÀ½ ¿¹¿Í ¸¶Âù°¡Áö·Î, <body> Åױ׿¡´Â onload="setCookie()" ¸¦ ³Ö¾î¼, ±× ÆäÀÌÁö°¡ ·ÎµùµÇ¸é¼ ÀÚµ¿À¸·Î readCookie() ÇÔ¼ö°¡ È£ÃâµÇµµ·Ï ÇÏ¸é µË´Ï´Ù.
ÀÌ ½ºÅ©¸³Æ®¸¦ ÀÔ·ÂÇÑ html ¹®¼¸¦ À¥ºê¶ó¿ìÁ®¿¡¼ º¸¼¼¿ä.
°æ°í »óÀÚ°¡ ¶ß¸é¼ À§¿¡¼ ÀÔ·ÂÇÑ À̸§ÀÌ º¸ÀÌÁÒ?
¶óÀ̺귯¸®¾¿À̳ª µÇÁö´Â ¾ÊÁö¸¸ Äí۸¦ ¸¸µé°í ÀÐÀ» ¶§ ÀÚÁÖ ¾²ÀÌ´Â ·çƾÀÌ ÀÖ½À´Ï´Ù. ¸¹Àº ½ÎÀÌÆ®°¡ ÀÌ ·çƾÀ» Ä«ÇÇÇØ¼ »ç¿ëÇϰí ÀÖ½À´Ï´Ù. ¾î¶»°Ô ÀÌ·ïÁø °ÍÀÎÁö ÇϳªÇϳª ¼³¸íÇϰڽÀ´Ï´Ù.
¸ÕÀú Äí۸¦ ¼¼ÆÃÇÏ´Â ·çƾºÎÅÍ º¾½Ã´Ù.
ÄíŰ À̸§°ú °ª¸¸ ¼¼ÆÃÇÏ´Â °æ¿ì´Â ¾Õ¿¡¼ º» °Íó·³ escape() ÇÔ¼ö¿Í document.cookie¸¸ Ȱ¿ëÇÏ¸é °£´ÜÇÏ°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·±µ¥ ±×°Ç Á¦ÀÏ °£´ÜÇÑ ÄíŰÀÏ ¶§ÀÇ À̾߱âÀ̰í, »ç½ÇÀº ÄíŰ´Â ¿©·¯ °¡Áö Á¶°Ç°ú ÇÔ²² ¼ÂÆÃÇÒ ¼ö ÀÖ½À´Ï´Ù. Á¦ÀÏ ´ëÇ¥ÀûÀÎ °ÍÀÌ Äí۸¦ '¾ðÁ¦±îÁö ÀúÀåÇÒ °ÍÀΰ¡'ÀÔ´Ï´Ù.
ÄíŰ´Â »ç¿ëÀÚ Çϵåµð½ºÅ©¿¡ ÀúÀåµÈ´Ù°í Çß½À´Ï´Ù. ±×·±µ¥, ¾Æ¹« °ªµµ ÇÒ´çÇÏÁö ¾Ê°í ÄíŰ À̸§°ú ÄíŰ °ª¸¸À» ¼¼ÆÃÇÏ¸é ±× ÄíŰ´Â Çϵåµð½ºÅ©¿¡ ½ÇÁ¦·Î ÀúÀåµÇÁö´Â ¾Ê°í À¥ ºê¶ó¿ìÁ® âÀ» ´ÝÀ½°ú µ¿½Ã¿¡ »ç¶óÁö°Ô µË´Ï´Ù.(ÀÌ·± °ÍÀ» Äí۰¡ ±× '¼¼¼Ç¿¡¼¸¸ À¯È¿ÇÏ´Ù'¶ó°í ÇÕ´Ï´Ù.) ¸¸¾à Äí۸¦ ½ÇÁ¦·Î Çϵåµð½ºÅ©¿¡ ÀúÀåÇÏ°í ½Í´Ù¸é name=value ´ÙÀ½¿¡ ¼¼¹ÌÄÝ·ÐÀ» ¾²°í, expires=¶õ °ÍÀ» ºÙ¿© Áà¾ß ÇÕ´Ï´Ù. (name=value;expires=)
À̶§ expires= ´ÙÀ½¿¡ ½á ÁÖ´Â ½Ã°£Àº ¹Ýµå½Ã Ç¥ÁØÈµÈ ½Ã°£, Áï GMT·Î ¹Ù²ã¾ß ÇÕ´Ï´Ù. ±×·² ¶§ »ç¿ëÇÏ´Â °ÍÀÌ toGMTString()À̶ó´Â ÇÔ¼öÀÔ´Ï´Ù.
¿¹¸¦ µé¾î Áö±Ý ÇöÀç ½Ã°£À» GMT Çü½ÄÀ¸·Î Ãâ·ÂÇÏ·Á¸é,
var today = new Date();
var mytime = today.toGMTString();
document.writeln(mytime);
ÀÌ·¸°Ô Çϸé 7 Jan 2002 13:40:12 UTC¶ó°í Ãâ·ÂµË´Ï´Ù. ¹Ù·Î ÀÌ·± °ÍÀÌ GMT Çü½ÄÀÔ´Ï´Ù.
'Áö±ÝÀ¸·ÎºÎÅÍ ¾ó¸¶ µÚ'¸¦ °è»êÇÏ·Á¸é ¸ðµÎ ´Ù "ÃÊ"·Î °íÄ¡´Â°ÍÀÌ ÁÁ½À´Ï´Ù. ÀÌ ¶§ ÁÖ·Î ¹Ð¸®¼¼ÄÁµå(Áï, õºÐÀÇ ÀÏÃÊ)¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌ·¸°Ô ³¯Â¥(Date)¸¦ ¹Ð¸®¼¼ÄÁµå·Î ¹Ù²ã ÁÖ´Â ÇÔ¼ö°¡ getTime() ÇÔ¼öÀÔ´Ï´Ù. ´ÙÀ½ Äڵ带 º¸¼¼¿ä.
var today = new Date();
var millisec = today.getTime();
document.writeln(millisec);
Áö±Ý ½Ã°£À» ÇØ º¸´Ï±î 1010410299350À̱º¿ä. ±×·¯¸é Áö±ÝÀ¸·ÎºÎÅÍ 28ÀÏ µÚ´Â ¾î¶»°Ô µÉ±î¿ä?
(today.getTime() + 28 * 24 * 60 * 60 * 1000);
À̰ÍÀ» Date() ÇÔ¼ö¿¡ (¾ö¹ÐÇÏ°Ô ¾ê±âÇÏÀÚ¸é Date() °´Ã¼¿¡) ³Ö¾î ÁÖ¸é ´Ù½Ã ³¯Â¥·Î ¹Ù²ß´Ï´Ù.
ÀÌÁ¦ Äí۸¦ ¼¼ÆÃÇØ º¾½Ã´Ù. ÄíŰ¼¼ÆÃ ÇÔ¼ö´Â setCookie() À̰í, ÆÛ·¡¹ÌÅÍ´Â name°ú value, expiresÀÔ´Ï´Ù.
var today = new Date();
var expiry = new Date(today.getTime() + 28 * 24 * 60 * 60 * 1000);
function setCookie(name, value, expires) {
document.cookie=name + "=" + escape(value) +
((expires)? "; expires=" + expiry.toGMTString() : "");
}
½±°Ô ÀÌÇØ°¡ µÇÁÒ? expires? a : b´Â Àü´Þ¹ÞÀº ÆÛ·¡¹ÌÅÍ¿¡ expires Ç׸ñÀÌ ÀÖÀ¸¸é a, ¾øÀ¸¸é b¸¦ ÅÃÇÑ´Ù´Â ÀǹÌÀÔ´Ï´Ù. À§ÀÇ °æ¿ì expires Ç׸ñÀÌ ÀÖÀ¸¸é ;expires=³¯Â¥¸¦ ÄíŰ °ª µÚ¿¡ ºÙ¿© ÁÖ°í, ¾øÀ¸¸é "", ¾Æ¹« °Íµµ ¾È ºÙÀÌ´Â °Ì´Ï´Ù.
¸ÕÀú ¾à°£ÀÇ ¼³¸íÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¾Õ¿¡¼ ¾ê±âÇÑ ¹®ÀÚ¿ °ü·Ã ÇÔ¼ö Áß¿¡´Â substr()À̶õ °ÍÀÌ ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô »ç¿ëÇÕ´Ï´Ù.
var myname = "paul gilbert";
var a = myname.substr(0,4);
ÀÌ·¸°Ô Çϸé a¿¡´Â paulÀÌ ´ã±é´Ï´Ù. Áï substr(a,b) ¶ó°í Çϸé, ¾î¶² ¹®ÀÚ¿ÀÇ a ¹øÂ° À§Ä¡¿¡¼ºÎÅÍ b°³¸¦ ¼¼¼ ¸®ÅÏÇÕ´Ï´Ù. À§ÀÇ °æ¿ì ù ±ÛÀÚºÎÅÍ 4±ÛÀÚ¸¦ ¼¼¼ ¸®ÅÏÇÕ´Ï´Ù. ¹®ÀÚ¿À» ¼¿ ¶§´Â 0ºÎÅÍ ¼¾´Ù´Â °Í¿¡ ÁÖÀÇÇϼ¼¿ä.
indexOf¸¦ Á¶±Ý ´õ È®ÀåÇØ º¼±î¿ä? indexOf("a",3)À̶ó°í ÇÏ¸é ¾î¶² ¹®ÀÚ¿¿¡¼ a¸¦ ã¾Æ¼ À§Ä¡¸¦ µ¹·Á ÁÖµÇ, 3¹øÂ° ±ÛÀÚºÎÅÍ Ã£´Â´Ù´Â ÀǹÌÀÔ´Ï´Ù.
length´Â À̸§ ±×´ë·ÎÀÔ´Ï´Ù. ±ÛÀÚ ¼ö¸¦ ¼¼¼ ¸®ÅÏÇÕ´Ï´Ù. ¿¹¸¦ µé¾î À§¿¡¼ a.length´Â 4¸¦ ¸®ÅÏÇÕ´Ï´Ù. Á¤¸®ÇÏ´Â Àǹ̿¡¼ ¿¹¸¦ Çϳª µé¾îº¼±î¿ä?
var wb = "webbiz";
var b = wb.length;
b¿¡´Â 6ÀÌ ´ã±é´Ï´Ù.
ÀÚ, ÀÌÁ¦ Äí۸¦ Àд ·çƾÀ» º¾½Ã´Ù. ÀÌ·¸°Ô »ý°å½À´Ï´Ù.
function getCookie(name) {
var index = document.cookie.indexOf(name + "=");
if (index == -1) return null;
index = document.cookie.indexOf("=", index) + 1;
var endstr = document.cookie.indexOf(";", index);
if (endstr == -1) endstr = document.cookie.length;
return unescape(document.cookie.substring(index, endstr));
}
º¹ÀâÇØ º¸À̳ª¿ä?
ÀÌ ÇÔ¼ö´Â ÄíŰ À̸§(name)À» ´øÁ® ÁÖ¸é ÄíŰ °ª(value)À» ¸®ÅÏÇÏ´Â ÇÔ¼öÀÔ´Ï´Ù. °³·«ÀûÀ¸·Î ¼³¸íÇØ º¸¸é, name= ´ÙÀ½ ±ÛÀÚ¿¡¼ ºÎÅÍ ¸Ç ¸¶Áö¸· ±ÛÀÚ±îÁö(Áï ÄíŰ value)¸¦ »Ì¾Æ¼ ¸®ÅÏÇÏ´Â °ÍÀÔ´Ï´Ù. µû¶ó¼ name= ´ÙÀ½ ±ÛÀÚ À§Ä¡¿Í ¸Ç ¸¶Áö¸· ±ÛÀÚ À§Ä¡¸¦ ¾Ë¾Æ³½ ´ÙÀ½ substr()À» ÀÌ¿ëÇØ¼ °ª ºÎºÐ¸¸ ÃßÃâÇÏ¸é µË´Ï´Ù.
name=À̶ó´Â ¹®ÀÚ¿ÀÇ Ã¹ ±ÛÀÚ°¡ ¸î ¹øÂ°¿¡ ³ª¿À´Â°¡¸¦ ¼¼¼ ±× °ªÀ» index¿¡ ´ã½À´Ï´Ù. document.cookie´Â Äí۸¦ ÀоîµéÀÌ´Â °ÍÀ̶ó°í ÇßÁÒ?index°¡ -1 Áï, name=À̶ó´Â ¹®ÀÚ¿ÀÌ ÄíŰ¿¡ ¾ø´Â °æ¿ì´Â ±× À̸§¿¡ ÇØ´çÇÏ´Â Äí۰¡ ¾ø´Â°Å´Ï±î nullÀ» ¸®ÅÏÇÕ´Ï´Ù.name= ´ÙÀ½ ¹®ÀÚÀÇ À§Ä¡¸¦ index °ª¿¡ ÇÒ´çÇÕ´Ï´Ù. name= ´ÙÀ½ °ªÀº ±× À̸§¿¡ ÇØ´çÇÏ´Â ÄíŰ °ª(value)ÀÇ ½ÃÀÛ À§Ä¡ÀÔ´Ï´Ù. »ý°¢ ³ªÁÒ? ÄíŰ´Â name=value;ÀÇ ÇüÅ·ΠµÇ¾î ÀÖ´Ù°í Çß½À´Ï´Ù.;À» ã¾Æ¼ ±× À§Ä¡¸¦ endstrÀ̶ó´Â º¯¼ö¿¡ ÇÒ´çÇÑ´Ù´Â ÀǹÌÀÔ´Ï´Ù. Áï, document.cookie ÀÇ ¸¶Áö¸· À§Ä¡¸¦ endstrÀ̶ó´Â °ª¿¡´Ù ´ã´Â °ÍÀÔ´Ï´Ù. indexOf(";",index)ÀÇ Àǹ̴ ;ÀÇ À§Ä¡¸¦ ãµÇ, index °ªÀÇ À§Ä¡¿¡¼ºÎÅÍ Ã£¾Æ¶ó´Â ÀǹÌÀÔ´Ï´Ù ±×¸®°í ÇöÀç index °ªÀº = ´ÙÀ½ °ª(Áï, ÄíŰ value)ÀÇ Ã¹ ±ÛÀÚ À§Ä¡ÀÔ´Ï´Ù.endstr¿¡ ÇÒ´çÇÏ´Â °ÍÀÔ´Ï´Ù.document.cookie¸¦ index¿¡¼ºÎÅÍ ¼¼¼ endstr°³¸¸Å Ãß?¶õ µÚ, ±×°ÍÀ» unescape()ÇÏ´Â °ÍÀÔ´Ï´Ù.ÇÑ °¡Áö ÁÖÀÇÇÒ Á¡ÀÌ ÀÖ½À´Ï´Ù. ¼¼¹ÌÄÝ·ÐÀÌ ÀÖ´Â °æ¿ì´Â 0ºÎÅÍ ¼¼´Ï±î [±ÛÀÚ¼ö -1]°³¸¦ »Ì¾Æ³»°Ô µÇ°í, ¼¼¹ÌÄÝ·ÐÀÌ ¾ø´Â °æ¿ì´Â ±ÛÀÚ ¼ö¸¸Å »Ì¾Æ ³»´Ï±î °á±¹¿¡´Â ¼¼¹ÌÄÝ·ÐÀÌ ³ª¿À±â Àü±îÁöÀÇ ¹®ÀÚ¿¸¸ substrÇÏ´Â °Ô µË´Ï´Ù.(Áï, ¼¼¹ÌÄÝ·Ð ¾ÕÀÇ ÄíŰ value¸¸ »Ì¾Æ³»´Â °ÍÀÌÁÒ)
±×·¯¸é counter¶ó´Â À̸§ÀÇ Äí۸¦ ÀÌ¿ëÇØ¼ ÆäÀÌÁö ¹æ¹®È½¼ö¸¦ °è»êÇØ º¾½Ã´Ù. ´ÙÀ½°ú °°ÀÌ ÇÏ¸é µË´Ï´Ù.
var visits = getCookie("counter");
// counter ¶ó´Â Äí۰¡ ÀÖÀ¸¸é ±× °ªÀ» ²¨³»¼ visits ¿¡ ´ã¾Æ¶ó´Â ¾ê±â ÀÔ´Ï´Ù
if (!visits) { // ¸¸¾à visits °¡ °ÅÁþÀ̶ó¸é, Áï counter ¶ó´Â Äí۰¡ ¾ø´Ù¸é
visits = 1; // visits ¸¦ 1 ·Î ¼¼ÆÃÇϰí
document.write("ÀÌ ÆäÀÌÁö¿¡ óÀ½ ¿À¼Ì±º¿ä");
} else {
// visits °ªÀÌ ÀÖ´Ù¸é 1 À» Áõ°¡½Ãŵ´Ï´Ù
visits = parseInt(visits) + 1; } // parseInt() ´Â Á¤¼ö·Î ¹Ù²ãÁÖ´Â ÇÔ¼ö..
document.write("ÀÌ ÆäÀÌÁö¿¡ " + visits + "¹øÂ°±º¿ä!");
setCookie("counter", visits, today);
// ´Ù½Ã counter ÄíŰ¿¡ visits °ªÀ» ÇÒ´çÇÑ µÚ ÄíŰ¼¼ÆÃ
ÇÑ ¹ø Å×½ºÆ® ÇØº¼±î¿ä?
ÇöÀç ÆäÀÌÁö¸¦ ´Ù½Ãº¸±â(F5 ¶Ç´Â CTRL-R) ÇØ º¸¸é À§ ¼ýÀÚ°¡ Çϳª¾¿ ¿Ã¶ó °¡´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×¸®°í Äí۰¡ ÀúÀåµÇ´Â µð·ºÅ丮¿¡ °¡º¸¸é ÀÌ ½ÎÀÌÆ®¿¡¼ ÀúÀåÇÑ counter Äí۸¦ È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. :-P
Áï½Ã Ȱ¿ëÇÒ ¼ö ÀÖµµ·Ï ¼Ò½º¸¦ Á¤¸®ÇØ º¾´Ï´Ù.
<script language="javascript">
<!--
function getCookie(name) {
var index = document.cookie.indexOf(name + "=");
if (index == -1) return null;
index = document.cookie.indexOf("=", index) + 1;
var endstr = document.cookie.indexOf(";", index);
if (endstr == -1) endstr = document.cookie.length;
return unescape(document.cookie.substring(index, endstr));
}
var today = new Date();
var expiry = new Date(today.getTime() + 28 * 24 * 60 * 60 * 1000);
function setCookie(name, value, expires) {
document.cookie = name + "=" + escape(value) +
((expires)? "; expires=" + expiry.toGMTString() : "");
}
var visits = getCookie("counter");
if (!visits) {
visits = 1;
document.write("<p><font color=#990099>ÀÌ ÆäÀÌÁö¿¡ óÀ½ ¿À¼Ì±º¿ä</font>");
} else {
visits = parseInt(visits) + 1;
document.write("<p><font color=#990099>¿©±â¿¡ " + visits + " ¹øÂ°½Ã±º¿ä</font>");}
setCookie("counter", visits, today);
//-->
</script>
