|
5th
|
2004-05-17 18:50:18, Á¶È¸ : 2,833, Ãßõ : 297 |

[±âÃʰÁ #10] ¹æ¸í·Ï ¸¸µé±â #2
( Àüü ¼Ò½º´Â ÷ºÎµÈ ÆÄÀÏÀ» ÂüÁ¶ÇØÁÖ¼¼¿ä. ºÎºÐÀûÀ¸·Î¸¸ ¹ßÃéÇØ¼ ¼³¸íÇÕ´Ï´Ù. )
( [±âÃʰÁ #9]¿¡ ¼Ò½º ÆÄÀÏ Ã·ºÎµÇ¾ú½À´Ï´Ù. )
========================================================================
TWrite.scurl
: ¹æ¸í·Ï ¾²±â ÆûÀÔ´Ï´Ù.
Àü¼Û ¹öưÀ» Ŭ¸¯Çϸé DB¿¡ Á¢¼ÓÇÏ¿© insert¸¦ ¼öÇàÇϰí, ±Û ¸ñ·ÏÀ» ´Ù½Ã ¡°»õ·Î°íħ¡± ÇÕ´Ï´Ù.
-------------------------------------------------------------
|| *** start.curl ***
let tr : TRecord = {TRecord}
let li : TList = {TList tr}
let wr : TWrite = {TWrite
call-back= { proc {sender:any}: void
{li.clear}
{tr.selectAll}
{li.show-list {tr.getRecordView}}
}
}
-------------------------------------------------------------
|| *** contstructor ***
field public call-back : #{proc-type {sender:any}: void}
{constructor public {default
call-back : #{proc-type {sender:any}: void}=null,
...
}
........
set self.call-back = call-back
}
-------------------------------------------------------------
start.curl ¿¡¼ °´Ã¼¸¦ »ý¼ºÇÏ¸é¼ call-back ÇÁ·Î½ÃÁ®¸¦ ³Ñ°ÜÁÝ´Ï´Ù.
ÀÌ ÇÁ·Î½ÃÁ®ÀÇ ¿ªÇÒÀº ±ÛÀÌ ÀԷµɶ§¸¶´Ù,
ȸéÀ» Áö¿ì°í, -> {li.clear}
±Û ¸ñ·ÏÀ» ´Ù½Ã °¡Á®¿Í -> {tr.selectAll}
ȸ鿡 Ç¥½ÃÇÕ´Ï´Ù. -> {li.show-list {tr.getRecordView}}
ȸéÀ» ¸ðµÎ Áö¿ì´Â°Ô ¾Æ´Ï¶ó ¾²±â ÆûÀº ±×³É µÎ°í, ±Û ¸ñ·Ï¸¸ Áö¿ì°í ´Ù½Ã Ãâ·ÂÇÕ´Ï´Ù.
ȸéÀ» ÀϺκи¸ Áö¿ì°í ´Ù½Ã ¾µ¼ö Àִٴ°Å..ÄÃÀÇ ÀåÁ¡Áß ÇϳªÀÎ °Í °°½À´Ï´Ù.
·ÎÄ÷ΠÀÛ¾÷Çß´Ù°íÇϳª ±âÁ¸ÀÇ jsp·Î ÀÛ¾÷ÇßÀ»¶§¿Í ºñ±³ÇÏ¿© »ó´çÈ÷ ºü¸£´Ù´Â ´À³¦ÀÌ¿´½À´Ï´Ù.
-------------------------------------------------------------
|| *** write-form method ***
||-- Get ¹æ½Ä
let (result :String, error? : bool) =
{gfGetMethod
{url
"http://localhost/study/Board_working/phpfile/freeBoard.php?mode=insert&fname="
&self.fname.value
& "&femail="&self.femail.value
& "&fcontents="&self.fcontents.value
& "&fpasswd="&self.fpasswd.value
},
{get-character-encoding-by-name "euc-kr"}
}
-------------------------------------------------------------
httplib.scurlÀÇ gfGetMethod ÇÁ·Î½ÃÁ®¸¦ ÀÌ¿ëÇÏ¿© freeBoard.php¸¦ È£ÃâÇÕ´Ï´Ù.
httplib.scurlÀº [À¥¼¹ö¿ÍÀÇ ¸¸³²#3] °Á¸¦ ÂüÁ¶ÇØÁÖ¼¼¿ä.
°Á¸¦ °Ç³Ê¶ç°í ¿À½ÅºÐÀº,,,
{gfGetMethod}´Â È£ÃâÇϰíÀÚ ÇÏ´Â DB¿ÍÀÇ ¿¬°á ÆÄÀÏ ÁÖ¼Ò(³Ñ±â·Á°íÇÏ´Â º¯¼ö Æ÷ÇÔ)¿Í ÀÎÄÚµù¹æ½Ä,
µÎ°¡Áö¸¦ argument·Î ¹Þ´Â ÇÁ·Î½ÃÁ®¶ó°í »ý°¢ÇÏ½Ã¸é µË´Ï´Ù.
Get ¹æ½ÄÀ¸·Î ÀڷḦ ³Ñ±æ¶§´Â À§¿Í °°ÀÌ ÁÖ¼Ò µÚ¿¡ ¡°?º¯¼ö¸í=°ª¡± À¸·Î ³Ñ±â°í,
¿©·¯ º¯¼ö¸¦ ³Ñ±æ¶§´Â & ·Î ¿¬°áÇÕ´Ï´Ù.
´ÜÁö º¯¼ö 5°³¸¦ ³Ñ±â´Âµ¥µµ À§¿Í °°ÀÌ º¹ÀâÇÏ°í ±ä ÁÖ¼Ò°¡ µÇ¾î ¹ö·È½À´Ï´Ù.
¶Ç, À¥ ºê¶ó¿ìÀúÀÇ ÁÖ¼ÒÇ¥½ÃÁÙ¿¡ °ªµéÀÌ ±×´ë·Î ³ªÅ¸³ª¹Ç·Î º¸¾È¿¡µµ ÁÁÁö ¾Ê°ÚÁÒ.
-------------------------------------------------------------
|| *** write-form method ***
||-- Post ¹æ½Ä
let (result :String, error? : bool) =
{gfPostMethod
{url
"http://localhost/study/Board_working/phpfile/freeBoard.php"
},
{get-character-encoding-by-name "euc-kr"},
{HttpFormStringParam "mode", "insert"},
{HttpFormStringParam "fname", self.fname.value},
{HttpFormStringParam "femail", self.femail.value},
{HttpFormStringParam "fcontents", self.fcontents.value},
{HttpFormStringParam "fpasswd", self.fpasswd.value}
}
-------------------------------------------------------------
httplib.scurlÀÇ gfPostMethod ÇÁ·Î½ÃÁ®¸¦ ÀÌ¿ëÇÏ¿© freeBoard.php¸¦ È£ÃâÇÕ´Ï´Ù.
À§¿Í ¸¶Âù°¡Áö·Î,
{gfPostMethod}´Â È£ÃâÇϰíÀÚ ÇÏ´Â DB¿ÍÀÇ ¿¬°á ÆÄÀÏ ÁÖ¼Ò¿Í ÀÎÄÚµù¹æ½Ä,
±×¸®°í ³Ñ°ÜÁà¾ßÇÒ º¯¼öµéÀ» HttpFormStringParam Ŭ·¡½º¸¦ »ç¿ëÇÏ¿© ³Ñ°ÜÁÝ´Ï´Ù.
{gfPostMethod}´Â rest argument(...)·Î º¯¼öµéÀ» ¹ÞÀ¸¹Ç·Î,
HttpFormStringParam¸¦ °³¼ö¿¡ »ó°ü¾øÀÌ º¸³¾¼ö ÀÖ½À´Ï´Ù.
-------------------------------------------------------------
|| *** write-form method ***
{self.reset}
{if-non-null self.call-back then
{self.call-back self}
-------------------------------------------------------------
°ªµéÀ» ³Ñ°ÜÁصڿ¡´Â °¢ ÅØ½ºÆ®ÇʵåÀÇ °ªµéÀ» Áö¿öÁà¾ßÇϹǷΠreset ¸Þ¼Òµå¸¦ È£ÃâÇϰí,
¹æ¸í·Ï ±Û ¸ñ·ÏÀ» °»½Å½Ã۱âÀ§ÇØ call-back ÇÁ·Î½ÃÁ®¸¦ È£ÃâÇÏ¿©,
ȸéÀ» Áö¿ì°í, -> {li.clear}
DB¿¡¼ data¸¦ °¡Á®¿À°í -> {tr.selectAll}
ȸ鿡 Ãâ·ÂÇÕ´Ï´Ù. -> {li.show-list {tr.getRecordView}}
========================================================================
´ÙÀ½ °Á¿¡¼ °è¼Ó...
- 5th –
|
|
|