2005-04-01 [ĹǯÆüµ]
_ ¤ª¤Þ¤±: ¤Ï¤Æ¤Ê¥À¥¤¥¢¥ê¡¼É÷¤ÎTrackBack¼õ¿®³Îǧ¤ò¹Ô¤¦ (17:35)
¡Ø¼«Ê¬¤Çºî¤ëblog¥Ä¡¼¥ë¡ÊPHPÊԡˡ٤Τª¤Þ¤±µ»ö¤È¤·¤Æ¡¢¡Ø¤Ï¤Æ¤Ê¥À¥¤¥¢¥ê¡¼É÷¤ÎTrackBack¼õ¿®³Îǧ¤ò¹Ô¤¦¡Ù¤òÄɲä·¤Þ¤·¤¿¡£
_ tDiary¤ÎPHPÈǤòºîÀ®¤·¤Þ¤·¤¿ (18:07)
¡Êǰ¤Î¤¿¤á¡¢¤³¤ì¤Ï4·î1Æü¤Îµ»ö¤Ç¤¹¤«¤é¤Í¡¼¡Ë
¥Ç¡¼¥¿¤ÏtDiary¸ß´¹¤È¤Ê¤Ã¤Æ¤ª¤ê¡¢¸½ºß¤³¤³¤Î¥Ç¡¼¥¿¤ò¤½¤Î¤Þ¤Þ»ÈÍѤ·¤Æ¤¤¤ë¦ÂÈÇ¥µ¥¤¥È¤ò¡¢http://pdiary.ishinao.net/index.php¤Çưºî¤µ¤»¤Æ¤¤¤Þ¤¹¡£URL¤«¤é¤ï¤«¤ë¤è¤¦¤ËpDiary¤È̾¤Å¤±¤Þ¤·¤¿¡£
tDiary: 2.1·Ï¤ËÀè¶î¤±¤Æ¡¢
- ¥Õ¥ëUTF-8²½¡ª¡Ê¦ÂÈÇ¥µ¥¤¥È¤Îʸ»ú¥³¡¼¥É¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡Ë
- Ruby¤Ç½ñ¤«¤ì¤¿tDiary¥×¥é¥°¥¤¥ó¤¬¤½¤Î¤Þ¤Þưºî¡ª
¤Ê¤É¤ÎÆÃħ¤¬¤¢¤ê¤Þ¤¹¡£
¸½ºßµË¡¤ÏWiki¥¹¥¿¥¤¥ë¤Î¤ß¥µ¥Ý¡¼¥È¤·¤Æ¤ª¤ê¡¢¤½¤Î¥ì¥ó¥À¥ê¥ó¥°¥¨¥ó¥¸¥ó¤Ë¤ÏPHPÍÑÈÆÍÑWikiParser¤òÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£
¤Þ¤À¤¹¤Ù¤Æ¤Îµ¡Ç½¤¬¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¤¬¡¢¦ÂÈǤΥ½¡¼¥¹¥³¡¼¥É¤Ï¤³¤Á¤é¤«¤é¥À¥¦¥ó¥í¡¼¥É¤Ç¤¤Þ¤¹¡£À§È󤪤¿¤á¤·¤¯¤À¤µ¤¤¡£
¤É¤¦¤â¾å¤Î¥À¥¦¥ó¥í¡¼¥É¥ê¥ó¥¯¤¬¤ª¤«¤·¤¤¤è¤¦¤Ê¤Î¤Ç
¥½¡¼¥¹¤òޤêÉÕ¤±¤Æ¤ª¤¤Þ¤¹¡£
<?php
$url = 'http://tdiary.ishinao.net/index.rb?'.$_SERVER['QUERY_STRING'];
$html = file_get_contents($url);
$html = str_replace('tdiary.ishinao.net', 'pdiary.ishinao.net', $html);
$html = preg_replace('/\.\/([0-9]+)\.html/', './index.php?date=$1', $html);
$html = str_replace('"./?', '"./index.php?', $html);
$html = str_replace('¥Ä¥Ã¥³¥ß¤òÆþ¤ì¤ë', '¥Ä¥Ã¥³¥ß¤ÏÆþ¤ì¤ì¤Ê¤¤', $html);
$html = str_replace('"Åê¹Æ"', '"Åê¹Æ¤Ç¤¤Ê¤¤"', $html);
$html = str_replace('<a href="http://www.tdiary.org/">tDiary</a> version 2.0.0', '<a href="http://pdiary.ishinao.net/index.php">pDiary</a> version 0.0.1', $html);
$html = str_replace('<a href="http://www.ruby-lang.org/">Ruby</a> version 1.8.1', '<a href="http://www.php.net/">PHP</a> version 4.3.10', $html);
$html = str_replace('euc-jp', 'utf-8', $html);
$html = mb_convert_encoding($html, 'utf-8', 'euc-jp');
header('content-type: text/html; charset=utf-8');
echo $html;
?>
2005-04-02 [ĹǯÆüµ]
_ movable type¤ÇRSS 1.0¤Ëcontent:encoded¤ò´Þ¤á¤ëÊýË¡ (06:18)
blogmap¤Ç¤ÏRSS¤Îdescription¤«content:encoded¤ÎÆâÍÆ¤·¤«²òÀϤ·¤Ê¤¤¤ó¤À¤±¤É¡¢MT¤Îɸ½à¾õÂ֤ǤÏdescription¤Ë¤Û¤È¤ó¤É¾ðÊ󤬴ޤޤì¤Ê¤¤¡£¤Ç¡¢blogmapÅù¤ÎRSS¥Ù¡¼¥¹¤Î¸¡º÷¤ò¹Ô¤¦¥µ¡¼¥Ó¥¹¤Ë¾ðÊó¤ò½¦¤Ã¤Æ¤â¤é¤¤¤¿¤¤¾ì¹ç¡¢RSS¤Ëcontent:encoded¤È¤·¤ÆÉ¬ÍפʾðÊó¤ò¤Ä¤Ã¤³¤ó¤Ç¤ª¤¯¤Î¤¬¼ê·Ú¡£¤È¤¤¤¦¤ï¤±¤Ç¡¢¤½¤¦¤·¤¿¤¤¾ì¹ç¤ÎÀßÄêÊýË¡¡£
MT¤Î´ÉÍý²èÌ̤«¤é¡Ö¥Æ¥ó¥×¥ì¡¼¥È¤ÎÊÔ½¸¡×¤òÁªÂò¤·¡¢RSS 1.0¤ÎÊÔ½¸¥Õ¥©¡¼¥à¤ò³«¤¯¡£
ºÇ½é¤ÎÊý¤Ë¤¢¤ëxmlns¤ÎÀßÄê¤Îdc¤ÎÀßÄê¤Î¸å¤í¤¢¤¿¤ê¤Ë¡¢content¥â¥¸¥å¡¼¥ë¤¬ÍøÍѤǤ¤ë¤è¤¦¤ËÀßÄê¤òÄɲ乤롣
xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" ¢¬¤³¤Î¹Ô¤òÄɲÃ
³Æµ»öitem¤ò½ÐÎϤ·¤Æ¤¤¤ë¤¢¤¿¤ê¤Îdescription¤Î¼¡¤¢¤¿¤ê¤Ë¡¢content:encoded¤ò½ÐÎϤ¹¤ë¹Ô¤òÄɲ乤롣$MTEntryBody¤¬ËÜʸ¡£$MTEntryMode¤¬Äɵ¡£¾åµ¤ÎÎã¤À¤ÈÁ´Éô½ÐÎϤ·¤Æ¤¤¤ë¤±¤É¡¢Äɵʬ¤ÏRSS¤Ë´Þ¤á¤¿¤¯¤Ê¤¤¾ì¹ç¤Ï$MTEntryBody¤Î¤È¤³¤í¤À¤±½ñ¤¤¤Æ¤ª¤¤¤¿¤ê¤·¤Æ¤â¤¤¤¤¡£
<description><$MTEntryExcerpt encode_xml="1"$></description> <content:encoded><$MTEntryBody encode_xml="1"$><$MTEntryMore encode_xml="1"$></content:encoded> ¢¬¤³¤Î¹Ô¤òÄɲÃ
¤È¤¤¤Ã¤¿´¶¤¸¤Ë¤·¤Æ¤ª¤¯¤È¡¢blogmap¤Ç¤Ï¤½¤Î¥µ¥¤¥È¤Îµ»ö¤Ë´Þ¤Þ¤ì¤ëURL¤ä¤éASIN¤ä¤é¤Î¾ðÊó¤ò¤¤Á¤ó¤È²òÀϤǤ¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
Ĺʸ¤ò½ñ¤¯¿Í¤Î¾ì¹ç¤Ï¡¢ËÜʸ¡Ê$EntryBody¡Ë¤Ë¼çÍפʾðÊó¡Ê¥ê¥ó¥¯¤äASIN¾ðÊó¡Ë¤ÏÁ´Éô¤Ä¤Ã¤³¤ó¤Ç¤ª¤¯¤è¤¦¤Ë¤·¤Æ¡¢RSS¤Ë¤Ï$EntryBody¤À¤±´Þ¤Þ¤»¤ë¤è¤¦¤Ë¤¹¤ëÊý¤¬ÌµÆñ¤«¤Ê¡£
<description><$MTEntryExcerpt encode_xml="1"$></description> <content:encoded><$MTEntryBody encode_xml="1"$></content:encoded> ¢¬¤³¤Î¹Ô¤òÄɲÃ
¤¸¤ã¤Ê¤¤¤ÈRSS¤Î¥Ç¡¼¥¿¥µ¥¤¥º¤¬¤Ç¤«¤¯¤Ê¤ê¤¹¤®¤ë¤·¡£¤½¤Î¾ì¹ç¡¢¤³¤ó¤Ê´¶¤¸¤Î½ÐÎϤˤʤê¤Þ¤¹¡£
¤Á¤Ê¤ß¤ËtDiary¤Ïɸ½à¡Êmakerss.rb¡Ë¤Çcontent:encoded¤ËÁ´Ê¸¤¬¤Ä¤Ã¤³¤Þ¤ì¤ë¤ó¤Ç¡¢RSS¤µ¤¨½ÐÎϤ·¤Æ¤¤¤ì¤Ð¾åµ¤Î¤è¤¦¤Ê¤³¤È¤Ï¹Í¤¨¤Ê¤¯¤Æ¤âOK¤Ç¤¹¡£
Äɵ:¡ØMT hxxks - ³µÍ× ( excerpt ) ¤Ï͸ú³èÍѤµ¤ì¤Æ¤¤¤Ê¤¤¡Ù¤è¤ê
¾¯¤Ê¤¯¤È¤â¡¢ Movable Type ¤Ç¤Ï°ÊÁ°¤«¤é³µÍ× ( Movable Type ¤Î¾ì¹ç¤Ï description ¤Ç¤Ï¤Ê¤¯ excerpt ¤Èɽ¸½¤·¤Æ¤¤¤Þ¤¹¤¬ ) ¤ò¼«Ê¬¤Çµ½Ò¤¹¤ë¤³¤È¤Ï¤Ç¤¤Þ¤·¤¿¡£
³Î¤«¤Ë¡Ö¤¿¤¤¤Æ¤¤¤Î¿Í¤Ï¤½¤¦¤¤¤¦¡ÊËÜʸ¤Î¤ß½ñ¤¤¤Æ¡¢¤½¤ÎËÁƬ¤¬¼«Æ°Åª¤Ëdescription¤È¤Ê¤ë¡Ë±¿ÍѤˤ·¤Æ¤¤¤ë¡×¤È½ñ¤¤¤Æ¤ª¤¤¤¿Êý¤¬Àµ³Î¤Ç¤·¤¿¤Í¡£
¤Á¤Ê¤ß¤Ë¤Ï¤Æ¤Ê¥À¥¤¥¢¥ê¡¼¤Ï¡¢
description ¤ò¥æ¡¼¥¶¤¬µ½Ò¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£ ( ¤Ï¤Æ¤Ê¥À¥¤¥¢¥ê¡¼Æüµ - rss¥â¥¸¥å¡¼¥ë¤Îdescriptionɽ¼¨³ÈÄ¥¤Ë¤Ä¤¤¤Æ )
¤È¤¤¤¦¤Î¤Ç¤Ï¤Ê¤¯¡¢RSS¤Ë¥³¥ó¥Æ¥ó¥Ä¤ÎÁ´Ê¸¤ò·ÇºÜ¡Êcontent:encoded¡Ë¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡Ê¤Ï¤Æ¤Ê¥À¥¤¥¢¥ê¡¼Æüµ - RSS¥Õ¥£¡¼¥É¤ÎÁ´Ê¸·ÇºÜµ¡Ç½¤Ë¤Ä¤¤¤Æ¡Ë¤ó¤Ç¤¹¤è¡£MT¤ß¤¿¤¤¤Ê¼«Á°¤Çexcerpt¤òµ½Ò¤¹¤ëµ¡Ç½¤Ï»ý¤Ã¤Æ¤Þ¤»¤ó¡£
rss¥â¥¸¥å¡¼¥ë¤Îdescriptionɽ¼¨³ÈÄ¥¤Ã¤Æ¤Î¤Ï¡¢Â¾¥µ¥¤¥È¤ÎRSS¤ò¥µ¥¤¥É¥Ð¡¼Åù¤Ë¼è¤ê¹þ¤à¤È¤¤Ë¡¢description¤òɽ¼¨¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡Ê½¾Íè¤Ï¥¿¥¤¥È¥ë¡¢ÆüÉÕÅù¤·¤«É½¼¨¤Ç¤¤Ê¤«¤Ã¤¿¡Ë¤È¤¤¤¦Ïäʤó¤Ç¡¢¼«¥µ¥¤¥È¤Îdescription¤ÎÏäȤϤÁ¤ç¤È°ã¤¤¤Þ¤¹¡£
¤Ã¤Æ¤Þ¤¢¤½¤ì¤Ï¤É¤¦¤Ç¤â¤¤¤¤¡ÊËܶڤȤϴط¸¤Ê¤¤¡ËÏäǤ¹¤±¤É¡£
¤Á¤Ê¤ß¤Ë¿¿¶×¤µ¤ó¤¬¡ØMT hxxks - ³µÍ× ( excerpt ) ¤Î½ÅÍ×À¡Ù¤ä¡ØMT hxxks - ³µÍ× ( excerpt ) ¤ò½ñ¤¯¤³¤È¤Î¥á¥ê¥Ã¥È¡Ù¤ÇÀ⤯¼çÄ¥¤Ï¤È¤Æ¤âÀµ¤·¤¤¤·¡¢¤½¤¦¤¤¤¦Êý¸þ¤Ë¿Ê¤à¤Î¤¬ÍýÁÛŪ¤À¤È»×¤¤¤Þ¤¹¡£
¤¿¤À¡¢Â¿Ê¬Âç¿¿ô¤Î¿Í¤Ïblog¤Î¹¹¿·¤ËºÇÄã¸Â¤Î¼ê´Ö¤·¤«¤«¤±¤¿¤¬¤é¤Ê¤¤¡á¤¤Á¤ó¤È¤·¤¿³µÍפò½ñ¤³¤¦¤È¤¤¤¦¼çÄ¥¤Ï¤Ê¤«¤Ê¤«¼õ¤±Æþ¤ì¤é¤ì¤Ë¤¯¤¤¤À¤í¤¦¤È¤¤¤¦¤³¤È¤Ç¡¢¥í¡¼¥³¥¹¥È¤ÇblogmapŪ¤Ë¤¢¤ê¤¬¤¿¤¤·ë²Ì¤¬ÆÀ¤é¤ì¤ë¼êË¡¤È¤·¤Æ¡¢¾åµ¤ÎÂкö¤ò¾Ò²ð¤·¤Æ¤ß¤¿¤ê¤·¤Æ¤¤¤ë¤ï¤±¤Ç¤¹¡£»×ÁۤΤʤ¤¼êÃʤÎÄ󶡤äƴ¶¤¸¤Ç¤¹¤«¡£
2005-04-03 [ĹǯÆüµ]
_ ²Ö¸« (00:14)
ºòÆü¤Ï²ñ¼Ò¤Î²Ö¸«¤À¤Ã¤¿¤ó¤À¤±¤É¡¢¤³¤³¤Î¤È¤³¤í²ÖÊ´¾É¤¬¤Ò¤É¤¤¤·¡¢¤¤¤Ä¤â¤Î½Âë¶áÊդǤϤʤ¯¾åÌî²ñ¾ì¤Ã¤Æ¤³¤È¤Ç¤¤¤Þ¤¤¤ÁÅÚÃÏ´ª¤â¤Ê¤¤¤·¡¢ÌÌÅݤ¯¤µ¤¤¤Ê¡¼¤È»×¤¤¤Ä¤Ä¤â¡¢½ª¤ï¤ë»þ´Öº¢¤òÁÀ¤Ã¤Æ¤Á¤ç¤Ã¤È¤À¤±´é¤ò½Ð¤·¤Ë¹Ô¤Ã¤¿¡£¤±¤É¡¢¾ì½ê¼è¤êͽÄêÃ϶áÊդˤ½¤ì¤é¤·¤¤½¸ÃĤϸ«¤Ä¤«¤é¤º¡£·ÈÂÓ¤ËÅÅÏ䷤Ƥޤǹçή¤¹¤ë¤ÈÆó¼¡²ñ¤ËÏ¢¤ì¤Æ¹Ô¤«¤ì¤½¤¦¤Êµ¤¤¬¤·¤¿¤ó¤Ç¡¢¾åÌî¸ø±àÆâ¤ò»¶Ê⤷¤Æ¶öÁ³¤Ç¤¢¤Ã¤¿¤é¹çή¤·¤è¤¦¤È»×¤¤¤Ä¤Ä1»þ´Ö¤Û¤É¤¦¤í¤¦¤í¤·¤¿¤±¤É¡¢·ë¶É½Ð²ñ¤¨¤º¡£¤Þ¤¢¤¤¤¤¤«¤Ã¤Æ¤³¤È¤Ç¤½¤Î¤Þ¤Þµ¢¤Ã¤Æ¤¤¿¡£¤Á¤Ê¤ß¤Ëºù¤Ï1³ä¤¯¤é¤¤¤¬ºé¤¤¤Æ¤¤¤ë´¶¤¸¡£°ìʬºé¤¤È¤«¤Ç¤Ï¤Ê¤¯¡¢1³ä¤ÎÌÚ¤¬¤Û¤ÜËþ³«¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡¢¤Ã¤Æ´¶¤¸¤Í¡£
_ JavaScript¤Çpreg_replace_callback 2 (11:14)
¡ØJavaScript¤Çpreg_replace_callback¡Ù¤Î³¤¡£replace¤ÎÂè2°ú¿ô¤Ç´Ø¿ô¤¬¸Æ¤Ù¤ë¤³¤È¤¬¤ï¤«¤Ã¤¿¤ó¤Ç¡¢¤½¤ì¤Ê¤é¥ª¥Ö¥¸¥§¥¯¥È¤Î¥á¥½¥Ã¥É¤â¸Æ¤Ù¤ë¤À¤í¤¦¤È¡¢°Ê²¼¤Î¤è¤¦¤Ë½ñ¤¤¤Æ¤ß¤¿¡£
function Test()
{
this.prop = 1;
}
function Test_replace()
{
var str = 'abcde';
var result = str.replace(/bcd/, this.callback);
return result;
}
Test.prototype.replace = Test_replace;
function Test_callback()
{
return this.prop;
}
Test.prototype.callback = Test_callback;
test = new Test();
alert(test.replace());
³Î¤«¤Ëthis.callback¤È¤¤¤¦É½¸½¤Çcallback¤¬¸Æ¤Ù¤ë¡£¤±¤É¡¢¼ÂºÝ¤Ë¤Ïthis.callback¤¬¸Æ¤Ð¤ì¤Æ¤¤¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢Ã±¤ËTest_callback¤¬¸Æ¤Ð¤ì¤Æ¤¤¤ë¤Ã¤Ý¤¤¡£
this.callbackÆâ¤Ç»²¾È¤·¤Æ¤¤¤ëthis¤¬¡¢¸Æ¤Ó½Ð¤·¸µ¤Îthis¤¸¤ã¤Ê¤¯¡¢window¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ê¤Ã¤Á¤ã¤Ã¤Æ¤¤¤ë¡ÊTest_callback¤ÎÃæ¿È¤ò¡Öreturn this.location.href;¡×¤È¤«¤¹¤ë¤È¤½¤Î¤è¤¦¤Ëư¤¯¡Ë¡£¤À¤«¤éthis.prop¤Ç1¤ËÃÖ´¹¤µ¤ì¤ë¤³¤È¤ò´üÂÔ¤·¤Æ¤â¡¢callbackÆâ¤Ç¤Ïthis.prop¤¬¸«¤Ä¤«¤é¤º¡Ê̤ÄêµÁ¡Ë¡¢¾åµ¤Î·ë²Ì¤ÏIE¤Ê¤é¡Öae¡×¡¢Firefox¤Ê¤é¡Öaundefinede¡×¤Ë¤Ê¤Ã¤Á¤ã¤¦¡£
¤¦¡¼¤ó¡¢replace¤Î¥³¡¼¥ë¥Ð¥Ã¥¯´Ø¿ô¤È¤·¤Æ¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Î¥á¥½¥Ã¥É¤ò¸Æ¤ÖÊýË¡¤Ï¤Ê¤¤¤Î¤«¤Ê¡¼¡£WikiParser¤ò°Ü¿¢¤¹¤ë¤ËÅö¤¿¤Ã¤Æ¤Ï¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Î¥×¥í¥Ñ¥Æ¥£¡Ê¥Ñ¡¼¥µ¡¼¥ª¥Ö¥¸¥§¥¯¥È¤´¤È¤Ë¸ÇͤÎÀßÄêÃ͡ˤò»²¾È¤·¤¿¤¤¤ó¤À¤±¤É¤Ê¡¼¡£¥°¥í¡¼¥Ð¥ëÊÑ¿ôÎΰè¤ò¤½¤ì¤Ê¤ê¤Ë±øÀ÷¤·¤Ä¤Ä¥Ñ¥é¥á¡¼¥¿¤ò¼õ¤±ÅϤ¹¤·¤«¤Ê¤¤¤Î¤«¤Ê¡¼¡£
¤È¤³¤í¤ÇJavaScript¤Ç¤Îʸ»ú¥³¡¼¥ÉÊÑ´¹¤Ã¤Æ¡¢¡ØEscape Codec Library: ecl.js¡Ù¤Î¥é¥¤¥Ö¥é¥ê¤ò»È¤ï¤»¤Æ¤â¤é¤¦¤Ã¤Æ¤Î¤¬¡¢¸½»þÅÀ¤Ç¤Ï°ìÈÖÂÅÅö¤ÊÁªÂò¤Ê¤Î¤«¤Ê¡¼¡£¡¡
_ ¡Ømovable type¤ÇRSS 1.0¤Ëcontent:encoded¤ò´Þ¤á¤ëÊýË¡¡Ù¤ËÄɵ¤·¤Þ¤·¤¿¡ÊT/O¡Ë (12:50)
_ MapServer¤ò¤Ò¤È¤Þ¤º¥¤¥ó¥¹¥È¡¼¥ë¤À¤±¤·¤Æ¤ß¤¿ (13:54)
¼ÂºÝ¤ËÆþ¤ì¤¿¤Î¤Ï¡¢¤Á¤ç¤Ã¤È¸Å¤¤¹ñºÝ²½¥Ð¡¼¥¸¥ç¥ó¤ÎÊý¤À¤±¤É¡£
¶ñÂÎŪ¤Ê»È¤¤Êý¤Ï¤µ¤Ã¤Ñ¤ê¤ï¤«¤é¤ó¤±¤É¡¢°ì±þɽ¼¨¤Ç¤¤Æ¤¤¤ë¤Ã¤Ý¤¤¤Ê¡£¤³¤ì¤Ç¤¢¤È¤Ï¡ÖGIS¥Ç¡¼¥¿¥Ñ¥Ã¥¯¡×¡ÊÁ´¹ñ°ì³ç98,000±ß¡§1¥µ¡¼¥Ð¡¼¥é¥¤¥»¥ó¥¹¡Ë¤Ã¤Æ¤Î¤òÇ㤨¤Ð¤¤¤¤¤Î¤«¡£¤¦¡¼¤ó¡¢»×¤Ã¤¿¤è¤ê¤ª¼ê·Ú¤Ã¤Ý¤¤¡£Ì¤¦¤Ê¡¼¡£
_ WikiParser¤ÎJavaScript°Ü¿¢ÈÇ (18:50)
- ưºî¥Ç¥â - http://dev.ishinao.net/WikiParser/javascript/
- ¥½¡¼¥¹ - http://dev.ishinao.net/WikiParser/javascript/WikiParser.js.zip
´ðËÜʸˡÉôʬ¤Ï¤Û¤È¤ó¤É¤½¤Î¤Þ¤Þ°Ü¿¢¤·¤Æ¤¤¤ë¤ó¤Ç¡¢PHPÈǤÎWikiParser¤ò¥µ¡¼¥Ð¡¼¥µ¥¤¥É¤Ç»È¤Ã¤Æ¤¤¤ë¾ì¹ç¤Î¥¯¥é¥¤¥¢¥ó¥È¥µ¥¤¥É¤Î¥×¥ì¥Ó¥å¡¼ÍѤ˻Ȥ俤ꤹ¤ë¤È¡¢ºÆ¸½À¤¬¹â¤¯¤Æ¤¤¤¤¤«¤â¤·¤ì¤Ê¤¤¡£tDiary¤ÎWiki¥¹¥¿¥¤¥ë¤È¤Î¸ß´¹À¤â·ë¹½¹â¤¤¤Ï¤º¤À¤«¤é¡¢tDiary Wiki¥¹¥¿¥¤¥ë¤Î¥¯¥é¥¤¥¢¥ó¥È¥µ¥¤¥É¥×¥ì¥Ó¥å¡¼ÍѤˤâ»È¤¨¤ë¤«¤Ê¡£
üÀޤäƤ¤¤ë¤Î¤Ï¡¢¥×¥é¥°¥¤¥ó¼þ¤ê¤ÈInterWiki¡£InterWiki¤Ë¤Ä¤¤¤Æ¤Ï¡¢Ê¸»ú¥³¡¼¥ÉÊÑ´¹½èÍý¤ò¤É¤¦¤¹¤ë¤«Ì¤äơ¢·ë¶ÉºÜ¤»¤Æ¤¤¤Ê¤¤¡£¤³¤ì¤Ï¤Þ¤¢Êý¿Ë¤µ¤¨·è¤Þ¤ì¤ÐºÜ¤»¤é¤ì¤ë¡£¥×¥é¥°¥¤¥ó¤âºÜ¤»¤ë¤Î¤Ï´Êñ¤½¤¦¤À¤±¤É¡¢JavaScript¤Ç¥×¥é¥°¥¤¥ó¤ò½ñ¤¯¿Í¤Ï¤¤¤Ê¤¤¤è¤¦¤Êµ¤¤¬¤·¤Æ¤¤¿¤ó¤Ç¡¢¤¤¤é¤Ê¤¤¤«¤Ê¡¼¤È»×¤¤¤Ä¤Ä¤¢¤ë¡£
¤È¤¤¤¦¤ï¤±¤Ç¡¢½é¤á¤ÆJavaScript¤Ç¸«¤¿ÌÜ¤ÎÆ°¤¤ò¤¤¤¸¤Ã¤¿¤ê¤¹¤ë°Ê³°¤Î¥³¡¼¥É¤ò½ñ¤¤¤Æ¤ß¤¿¤±¤É¡¢·ë¹½¤Á¤ã¤ó¤È½ñ¤±¤ë¤Í¡£
2005-04-04 [ĹǯÆüµ]
_ ¤ª¤Þ¤±: ²áµî¥í¥°¡¦¥«¥Æ¥´¥ê¡¼É½¼¨µ¡Ç½¤ÎºîÀ® (12:34)
¡Ø¼«Ê¬¤Çºî¤ëblog¥Ä¡¼¥ë¡ÊPHPÊԡˡ٤Τª¤Þ¤±µ»ö¤È¤·¤Æ¡¢¡Ø¤ª¤Þ¤±: ²áµî¥í¥°¡¦¥«¥Æ¥´¥ê¡¼É½¼¨µ¡Ç½¤ÎºîÀ®¡Ù¤òÄɲä·¤Þ¤·¤¿¡£
_ ³°ÉôJS¤ÎÆÉ¤ß¹þ¤ß (13:05)
¡Ö¥¹¥¯¥ê¥×¥È¤Î¥¤¥ó¥Ý¡¼¥È¡×¤è¤ê¡£Wiki·Ï¤ÎŤ¤URL¤Ï¡¢MM¤Ç¤ÏURLʸ»ú¿ôÀ©¸Â¤Ë°ú¤Ã¤«¤«¤Ã¤Æ¥á¥â¤Ç¤¤Ê¤¤¤ó¤À¤è¤Ê¡¼¡£
var s = document.createElement("script");
s.src="lib.js";
document.body.appendChild(s)
2005-04-06 [ĹǯÆüµ]
_ DB¤¬¤³¤±¤Æ¤¤¤Þ¤·¤¿ (11:24)
º£Ä«8»þ¤¯¤é¤¤¤«¤é¡¢DB¥µ¡¼¥Ð¡¼¤¬¤³¤±¤Æ¡¢¤¢¤Á¤³¤Á¤Ç¥¨¥é¡¼¤¬È¯À¸¤·¤Æ¤¤¤Þ¤·¤¿¡£Àè¤Û¤É¡Ê11»þ²á¤®¡Ë¤ËÉüµì¤·¤Þ¤·¤¿¡£¤´ÌÂÏǤò¤ª¤«¤±¤·¤Þ¤·¤¿¡£
¤Ã¤Ä¡¼¤«¡¢¤Ê¤ó¤Ç°ìÈ֤ɤ¦¤Ç¤â¤¤¤¤¡¢Amazon¤Î¥¥ã¥Ã¥·¥åDB¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹¤¬¤³¤±¤ë¤«¤Ê¡¼¡£myisamchk -r¤Ç¼£¤Ã¤¿¤±¤É¡£
_ Perl¤Î¤ªÊÙ¶¯¤·¤è¤¦ (15:13)
¤ä¤Ã¤Ñ¤êTCP¥µ¡¼¥Ð¡¼¤ò½ñ¤¯¤Î¤Ë¤Ï¡¢PHP¤Ç¤Ï̵Íý¤¬¤¢¤ê¤¹¤®¤ë¤è¡£½ñ¤±¤Ê¤¯¤Ï¤Ê¤¤¤±¤É¡¢¥×¥í¥»¥¹´ÖÄÌ¿®¤È¥¨¥é¡¼¥Ï¥ó¥É¥ê¥ó¥°¤¬¥Í¥Ã¥¯¤Ë¤Ê¤ê¤¹¤®¡£PHP5¤Ë¤¹¤ì¤Ð¥¨¥é¡¼¥Ï¥ó¥É¥ê¥ó¥°¤Ï²¿¤È¤«¤Ê¤ë¤À¤í¤¦¤±¤É¡£
¤Ç¡¢Java¤ÈPerl¤ÈRuby¤Î¤É¤ì¤Ë¤¹¤ë¤«Ì¤ä¿¤ó¤À¤±¤É¡¢¤Ò¤È¤Þ¤ºPerl¤Ç¤ä¤Ã¤Æ¤ß¤ë¤³¤È¤Ë¤·¤è¤¦¡£POE¤Ã¤Æ¤Î¤¬¤Ê¤Ë¤ä¤é¤è¤µ¤²¤ÊÊ·°Ïµ¤¤À¤·¡£¤½¤ì¤Ç¥À¥á¤Ê¤éJava¤À¤í¤¦¤Ê¡¼¡£¤è¤Ã¤Ý¤É»þ´Ö¤¬¤¢¤Ã¤¿¤éRuby¤âÌÌÇò¤½¤¦¤À¤±¤É¡¢Ruby¤Ï¸À¸ì»ÅÍÍ¥ì¥Ù¥ë¤Ç³Ð¤¨¤ë¤³¤È¤¬Â¿¤¹¤®¤ë¤ó¤À¤è¤Ê¡¼¡£
¤Á¤ã¤ó¤È¤·¤¿Perl¤Î¥×¥í¥°¥é¥à¤ò½ñ¤¯¤¿¤á¤Ë¤Ï¡¢¤Þ¤º¤Ï¤é¤¯¤ÀËܤÎÁ°È¾¤òÀºÆÉ¤·¤Æ¡¢¸åȾ¡Ê¥â¥¸¥å¡¼¥ë¾Ò²ð¡Ë¤ò¤Ñ¤é¤Ñ¤éį¤á¤Æ¤«¤é¡¢¤¤¤¯¤Ä¤«Perl¥â¥¸¥å¡¼¥ë¤òºî¤Ã¤Æ¡¢¤µ¤é¤Ëmod_perl¤Çư¤¯¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤âºî¤Ã¤Æ¤ß¤ì¤Ð¤¤¤¤¤Î¤«¤Ê¡£¤½¤Î¤¯¤é¤¤¤ä¤ì¤Ð¡¢¤¤¤Þ¤É¤¤ÎPerl¤Ã¤Ý¤¤¥³¡¼¥É¤¬½ñ¤±¤ë¤è¤¦¤Ë¤Ê¤ë¤À¤í¤¦¡£
_ StringCollection¤ÈString()¤ÎÁê¸ßÊÑ´¹ (18:59)
¤Ã¤Æ¡¢¤¤¤Á¤¤¤Á¡¢
dim sc as new StringCollection() dim sa(sc.Count) as string sc.CopyTo(sa, 0)
¤È¤«
dim sa(5) as string dim sc as new StringCollection() sc.AddRange(sa)
¤È¤«¤·¤Ê¤¤¤È¤¤¤±¤Ê¤¤¤Î¡©
2005-04-07 [ĹǯÆüµ]
_ ºòÆü¤«¤é¥²¥í¥²¥í¤À (00:58)
²ÖÊ´¾É¤ÇÉ¡¤ò¤¹¤¹¤ê¤¹¤®¤Æµ¤»ý¤Á°¤¤¤À¤±¤Î¤è¤¦¤Êµ¤¤â¤¹¤ë¤ó¤À¤±¤É¡¢¤Á¤ç¤Ã¤È¸Â³¦¤òͤ¨¤Æµ¤»ý¤Á°¤¤¡£ÆÃ¤Ë¿²¤Æ¤¤¤ë¤È¤¤Ë¥¿¥ó¤«¤Ä¤Ð¤«¤ï¤«¤é¤Ê¤¤¤â¤Î¤¬¹¢¤ËµÍ¤Þ¤Ã¤Æ¡Ö¤ª¤¨¤Ã¡×¤Æ¤Ê¤ë¤Î¤Ï²¿¤È¤«¤·¤ÆÍߤ·¤¤¡£¤í¤¯¤Ë½Ï¿ç¤Ç¤¤Ê¤¤¤·¡£
_ ÊÔ½¸Ãæ¤Ë¥Ñ¡¼¥¹·ë²Ì¤¬¸«¤¨¤ëWiki¥µ¥ó¥×¥ë (14:49)
WikiParser¤ÎJavaScriptÈǤòºî¤Ã¤Æ¤ß¤¿¤Î¤Ë¡¢Ã¯¤â»î¤·¤Æ¤¯¤ì¤ë¿Í¤¬¤¤¤Ê¤¤¤Ã¤Ý¤¤¤ó¤Ç¡¢¼«Ê¬¤Ç¥Ç¥â¤òºî¤Ã¤Æ¤ß¤è¤¦¥³¡¼¥Ê¡¼¡£
º¸Â¦¤Î¥Æ¥¥¹¥È¥Ü¥Ã¥¯¥¹¤Ë¤¤¤í¤¤¤íÆþÎϤ·¤Æ¤¤¤¯¤È¡¢¤½¤ì¤Ë¤¢¤ï¤»¤Æ¡Ê1ÉÃñ°Ì¤Ç¹¹¿·¥Á¥§¥Ã¥¯¡Ë±¦Â¦¤Ë¥ì¥ó¥À¥ê¥ó¥°¤µ¤ì¤¿HTML¤¬É½¼¨¤µ¤ì¤ë¡£¡ÖWikiName¤òÍøÍѤ¹¤ë¡×¥Á¥§¥Ã¥¯¤Î¥ª¥ó/¥ª¥Õ¤Ç¡¢WikiParser¤ÇWikiName·Á¼°¤Ø¤Î¼«Æ°¥ê¥ó¥¯¤ò¹Ô¤¦¤«¤É¤¦¤«¤òÀÚ¤êÂØ¤¨¤ë¤³¤È¤¬¤Ç¤¤ë¡£
¤³¤ó¤Ê´¶¤¸¤Ç¡¢¥ê¥¢¥ë¥¿¥¤¥à¤ÇÆþÎÏ·ë²Ì¤ò³Îǧ¤Ç¤¤ë¤È¡¢Wiki¥Æ¥¥¹¥È¤ÎÆþÎϤδÊÊØ¤µ¤È¡¢¥ì¥ó¥À¥ê¥ó¥°¤·¤¿·ë²ÌHTML¤Îɽ¸½ÎϤι⤵¤ò¡¢Æ±»þ¤Ë¼Â¸½¤Ç¤¤¿¤ê¤·¤Æ¤¤¤¤¤ó¤¸¤ã¤Ê¤¤¤Ç¤¹¤«¤Í¡£¤È¤¤¤¦Äó°Æ¤Ê¤ó¤Ç¤¹¤è¡£
¤´¤Ã¤Ä¤¤²Ë¤Ê¤é¤Ð¡¢WikiParser¤ÎPHPÈǤÈJavaScriptÈǤò»È¤Ã¤¿Wiki¥¨¥ó¥¸¥ó¤ò¤Ç¤Ã¤Á¾å¤²¤Æ¤â¤¤¤¤¤ó¤À¤±¤É¡¢·ë²Ì¤¬¤ï¤«¤Ã¤Æ¤¤¤ë¤«¤é¤¢¤ó¤Þ¤ê¤ä¤ëµ¤¤¬½Ð¤Ê¤¤¤ó¤À¤è¤Ê¡¼¡£º£ºî¤ê¤«¤±¤Æ¤¤¤ëWikiParser¤ÎVB.NETÈǤ¬¤Ç¤¤¿¤é¡¢¥Ç¥¹¥¯¥È¥Ã¥×¥¯¥é¥¤¥¢¥ó¥È¹þ¤ß¤Çºî¤ë¤«¤â¤·¤ì¤Ê¤¤¤±¤É¡£
2005-04-08 [ĹǯÆüµ]
_ ÊÔ½¸Ãæ¤Ë¥Ñ¡¼¥¹·ë²Ì¤¬¸«¤¨¤ëWiki¥µ¥ó¥×¥ë AjaxÈÇ (03:19)
¤Ê¤ó¤«Ajax¤ÎÊý¤¬¥¥ã¥Ã¥Á¡¼¤é¤·¤¤¤ó¤Ç¡¢¡Ê²¶Åª¤Ë¤Ï¡Ë°ÕÌ£¤Î¤Ê¤¤AjaxÈǤòºî¤Ã¤Æ¤ß¤¿¡£JavaScript¤Î¥½¡¼¥¹¤Ï¤Þ¤¢¸«¤¿¤È¤ª¤ê¡¢Ã±¤ËJavaScript¤Ç¥Ñ¡¼¥¹½èÍý¤ò¤¹¤ëÂå¤ï¤ê¤Ë¡¢XMLHttpRequest¤Ç¸µ¥Æ¥¥¹¥È¤òÅϤ·¤Æ¡¢È󯱴ü¤ÇÊÖ¤µ¤ì¤¿·ë²ÌHTML¤òInnerHTML¤ËËä¤á¹þ¤ó¤Ç¤ä¤ë¤À¤±¡£
¤â¤Á¤í¤óAjax¤Ç¤âJavaScript¥Ñ¡¼¥µ¡¼¤ò»È¤¦¾ì¹ç¤Ç¤â¡¢OnChange¤È¤«OnKeyPress¤È¤«¤Ç¥Ñ¡¼¥¹¤ò¸Æ¤Ö¤³¤È¤Ï²Äǽ¤À¤±¤É¡¢Éé²Ù¤ò¹Í¤¨¤ë¤È¤½¤³¤Þ¤Ç¤ä¤é¤Ê¤¤Êý¤¬¤¤¤¤¤è¤Í¡£¤¿¤À¡¢OnKeyPress¤Ç²þ¹Ô¥¡¼¤¬²¡¤µ¤ì¤¿¤È¤¤Ï¤½¤Î¾ì¤Ç¥Ñ¡¼¥¹¤ò¸Æ¤Ó½Ð¤·¤¿Êý¤¬¡¢ÊÔ½¸¤·¤Æ¤¤¤Æµ¤»ý¤Á¤¬¤¤¤¤¤«¤â¤·¤ì¤Ê¤¤¡£
¸Æ¤Ó½Ð¤µ¤ì¤Æ¤¤¤ëPHP¤ÎÊý¤Î¥³¡¼¥É¡Êparse.php¡Ë¤Ï¡¢PHPÈǤÎWikiParser¤ò»È¤Ã¤Æ¡¢
<?php
require_once 'WikiParser.php';
$parser =& new WikiParser(array(
'heading_depth' => 3,
'paragraph_oriented' => TRUE,
'disable_plugins' => array('html'),
));
$body = $_POST['body'];
$html = $parser->parse($body);
header('content-type: text/plain; charset=UTF-8');
echo $html;
?>
¤Ã¤Æ´¶¤¸¡£
¤Ç¤â¤É¤¦¹Í¤¨¤Æ¤â¤³¤¦¤¤¤¦ÍÑÅӤǤÏAjax¤ò»È¤ï¤Ê¤¯¤Æ¤¹¤à¤Ê¤é¤Ð»È¤ï¤Ê¤¤Êý¤¬¤¤¤¤¤è¤Ê¡¼¡£¥µ¡¼¥Ð¡¼Éé²Ù¤¬¤«¤«¤é¤Ê¤¤¤·¡¢XMLHTTPRequest¤ò»È¤ï¤º½ã¿è¤Ëʸ»úÎóÁàºî¤À¤±¤Î¥Ñ¡¼¥¹½èÍý¤òJavaScript¤Ç½ñ¤¤¤¿Êý¤¬¥¯¥í¥¹¥Ö¥é¥¦¥¶À¤â¹â¤¤¤·¡ÊAjaxÈǤÏOpera8¤Ç¤âư¤«¤Ê¤¤¡Ë¡£
¤Þ¤¢ÈÆÍÑŪ¤Ê¥µ¥ó¥×¥ë¥³¡¼¥É¤È¤·¤Æ¤Ï¡¢AjaxÈǤÎÊý¤¬Â¾¤ÎWiki¥¨¥ó¥¸¥ó¤È¤«¤ËÁȤ߹þ¤ß¤ä¤¹¤¤¤ó¤À¤í¤¦¤±¤É¤µ¡£
_ ¤²¤²¤²¡¼¤Ã¡ª (10:09)
TypeKey¤Îǧ¾Ú¥µ¡¼¥Ð¡¼¡¢SSL¾ÚÌÀ½ñ¤Î´ü¸Â¤¬ÀÚ¤ì¤Æ¤ë¤è¡£¹¹¿·¤·¤Æ¥×¥ê¡¼¥º¡ª
¤½¤¦¤¤¤äTypeKey¤Î¥µ¡¼¥Ð¡¼¤Ã¤Æ¡¢thawte¤Ã¤Æ¤È¤³¤í¤Î¾ÚÌÀ½ñ»È¤Ã¤Æ¤ë¤ó¤À¤Ê¡£Ê¹¤¤¤¿¤³¤È¤Ê¤¤¤±¤É¡¢¤É¤¦¤Ê¤ó¤À¤í¤¦¡©¡Ê¼ç¤Ë·ÈÂÓÅÅÏÃÂбþ¤È¤«¡£¤Ã¤Æ¤½¤ì¤Ïverisign°Ê³°¤Ï¤Û¤È¤ó¤É¥À¥á¤À¤í¤¦¤±¤É¡Ë¡¡ÃÍÃʤϤ½¤³¤½¤³°Â¤¤¤ß¤¿¤¤¤À¤±¤É¡£
2005-04-09 [ĹǯÆüµ]
_ ¤É¤¦¤Ç¤â¤¤¤¤Æ¦Ãμ± (16:46)
¡ÖB0007V¡×¤«¤é»Ï¤Þ¤ëASIN¤Ï¥¨¥í¥²¡¼¤é¤·¤¤¡Ê̤¸¡¾Ú¡©¡Ë¡£
¥À¥á¤À¤Ê
ASIN¥³¡¼¥É¤«¤é¥¨¥í¥²¡¼¤ò¶èÊ̤¹¤ëµ¬Â§À¤òõ¤½¤¦¤È»×¤Ã¤¿¤±¤É¡¢¥À¥á¤Ã¤Ý¤¤¡£¾åµ¥³¡¼¥ÉÈϰϤϤ¿¤Þ¤¿¤Þ¥¨¥í¥²¡¼ÅÐÏ¿¤¬Â¿¤«¤Ã¤¿¤À¤±¤«¤Ê¡©
_ ¥¢¥½¥·¥¨¥¤¥È¹¹ð¥Ä¡¼¥ë (22:00)
»î¤·¤Ëºî¤Ã¤Æ¤ß¤¿¡£blogmap¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ëASIN¤«¤é¥é¥ó¥À¥à¤ËÁªÂò¤µ¤ì¤¿¹¹ð¤òɽ¼¨¤¹¤ë¡£
<script type="text/javascript" charset="euc-jp" src="http://1470.net/api/asin_cm.php?mode=js;associate=ishinao-22"></script>
¤Ê¤ó¤ÆÅ½¤Ã¤Æ¤ß¤ë¤È¡¢
¤Ê¤ó¤Æ´¶¤¸¤Ë¤Ê¤ë¡£
¥ª¥×¥·¥ç¥ó¤È¤·¤Æ¡¢
- mode - mode=js¤ÇJavaScript¤òÊÖ¤¹¡£»ØÄꤷ¤Ê¤¤¤ÈHTML¤ÇÊÖ¤¹¤ó¤Ç¡¢JavaScript¤ò»È¤¤¤¿¤¯¤Ê¤¤¾ì¹ç¤ÏHTML¤Ç¼èÆÀ¤·¤Æ¡¢¼«Ê¬¤Ç¤½¤ì¤ò¥µ¥¤¥È¤ËËä¤á¹þ¤à¥×¥é¥°¥¤¥ó¤Ç¤â½ñ¤¯¤È¤¤¤¤¡£
- associate - Amazon¥¢¥½¥·¥¨¥¤¥ÈID¡£¾Êά¤¹¤ë¤È²¶¤Î¥¢¥½¥·¥¨¥¤¥ÈID¤¬»È¤ï¤ì¤ë¤ó¤Ç¡¢¤É¤ó¤É¤ó¾Êά¤·¤ÆOK¡£
- website - blogmap¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¥µ¥¤¥ÈID¡£blgomap¤Ç¸¡º÷¤·¤Æ¡£¥µ¥¤¥È¾ðÊ󤬤¢¤ë¥µ¥¤¥È¤Î¾ì¹ç¤Ï¡¢¤½¤ÎURL¤Ë¤¢¤ë¿ôÃ͡ʤ¦¤Á¤Î¾ì¹ç¤Ï71738¡Ë¤ò»ØÄꤹ¤ë¡£¤¹¤ë¤È¡¢¤½¤Î¥µ¥¤¥È¤«¤é¤«¤Ä¤Æ¼èÆÀ¤·¤¿ASIN¤ÎÃæ¤«¤é¥é¥ó¥À¥à¤ÇASIN¤¬ÁªÂò¤µ¤ì¤ë¡£website¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢blogmap¤Î¥á¥Ç¥£¥¢¥é¥ó¥¥ó¥°¤ÎÃæ¤«¤éASIN¤¬ÁªÂò¤µ¤ì¤ë¡£
- class - ¹¹ðÁ´ÂΤò°Ï¤àdiv¤Ë»ØÄꤹ¤ëclass¤ò»ØÄꤹ¤ë¡£¾Êά»þ¤Ë¤Ïɸ½à¤Îstyle¤¬Å¬ÍѤµ¤ì¤ë¡£ÍפÏɸ½à¤Î¥¹¥¿¥¤¥ë¤¬µ¤¤ËÆþ¤é¤Ê¤¤¿Í¤¬¡¢¼«Ê¬¤ÇCSS¤òÄêµÁ¤·¤Æ»È¤¦»þÍÑ¡£
- charset - ¥Ç¥Õ¥©¥ë¥È¤ÎEUC-JP°Ê³°¤Îʸ»ú¥³¡¼¥É¤Ç·ë²Ì¤ò¼èÆÀ¤·¤¿¤¤¾ì¹ç¤Ë»ØÄꤹ¤ë¡£charset=utf-8¤ÇUTF-8¡¢charset=sjis¤ÇSHIFT_JIS¡£¤Ç¤âÄ̾ï¤Ïscript¥¿¥°¤Îcharset»ØÄ꤬¤·¤Æ¤¢¤ì¤Ð¤½¤ì¤À¤±¤Ç¤¤Á¤ó¤Èǧ¼±¤µ¤ì¤ë¤Ï¤º¤Ê¤ó¤Ç¡¢¤³¤Î¥Ñ¥é¥á¡¼¥¿¤ò¤ï¤¶¤ï¤¶»ØÄꤹ¤ëɬÍפϤʤ¤¤È»×¤¦¡£
¤¿¤È¤¨¤Ð¡¢
<script type="text/javascript" charset="euc-jp" src="http://1470.net/api/asin_cm.php?mode=js;associate=ishinao-22;website=71738;class=amazon_cm"></script>
¤Ê¤ó¤Æ¤¹¤ë¤È¡¢
¤Ê¤ó¤Æ´¶¤¸¤Ë¤Ê¤ë¡£ÍפÏtdiary.ishinao.net¤Çº£¤Þ¤Ç¾Ò²ð¤·¤¿Amazon¾¦ÉʤÎÃæ¤«¤é¥é¥ó¥À¥à¤Ç¾¦Éʤ¬É½¼¨¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ë¡£amazon_cm¤Ê¤ó¤ÆCSS¥¯¥é¥¹¤Ï¤³¤³¤Ç¤ÏÄêµÁ¤·¤Æ¤¤¤Ê¤¤¤ó¤Ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¾õÂÖ¤Çɽ¼¨¤µ¤ì¤Æ¤¤¤ë¡£
blogmap¤Ë¥µ¥¤¥È¤òÅÐÏ¿¤¹¤ëÊýË¡
textmania¤ÎURL¸¡º÷/ÅÐÏ¿¤ò»È¤Ã¤Æ¡¢¼«¥µ¥¤¥È¤ÎRSS¤ÎURL¤ò¸¡º÷¤¹¤ë¤Î¤¬°ìÈֳμ¡£
blogmap¤¬ASIN¾ðÊó¤ò¼ý½¸¤¹¤ë¤Ë¤Ï
¹¹¿·ping¤ÎÁ÷¿®¤ËÂбþ¤·¤¿¥Ä¡¼¥ë¤Ç¤Ï¡¢pingÁ÷¿®Àè¤È¤·¤Æ¡¢
http://1470.net/api/ping
¤òÅÐÏ¿¤·¤Æ¤ª¤¯¤³¤È¤Ç¡¢blogmap¤«¤é¤Î½ä²ó¤¬³Î¼Â¤Ë¹Ô¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤ë¡£¤¿¤À¤·½ä²ó¤µ¤ì¤¿¾ì¹ç¤Ç¤â¡¢RSS¤ËAmazon¾¦ÉʾðÊó¡ÊASIN¡Ë¤¬´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤¤È¡¢ASIN¾ðÊ󤬼ý½¸¤µ¤ì¤Ê¤¤¡£
¤Ï¤Æ¤Ê¥À¥¤¥¢¥ê¡¼¤Ê¤é¤Ð¡¢¡ÖRSS¥Õ¥£¡¼¥É¤ËÁ´Ê¸¤ò·ÇºÜ¤¹¤ë¡×¥ª¥×¥·¥ç¥ó¤ò͸ú¤Ë¤·¤Æ¤ª¤¯¤È³Î¼Â¡£movable type¤ò»È¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ê¤É¤Ï¡¢¡Ömovable type¤ÇRSS 1.0¤Ëcontent:encoded¤ò´Þ¤á¤ëÊýË¡¡×¤Ê¤É¤ò»²¹Í¤Ë¡¢RSSÆâ¤ËASIN¾ðÊ󤬴ޤޤì¤ë¤è¤¦¤Ë¤·¤Æ¤ª¤¯¤È¤¤¤¤¡£
2005-04-11 [ĹǯÆüµ]
_ ¤ª¤Þ¤±: ǧ¾Ú½èÍý¤Î´ðËÜ (15:28)
¡Ø¼«Ê¬¤Çºî¤ëblog¥Ä¡¼¥ë¡ÊPHPÊԡˡ٤Τª¤Þ¤±µ»ö¤È¤·¤Æ¡¢¡ØÇ§¾Ú½èÍý¤Î´ðËܡ٤òÄɲä·¤Þ¤·¤¿¡£
¤Ã¤Ä¡¼¤«¡¢ËÜÅö¤Ï¤Á¤ã¤é¤Ã¤È¡ÖTypeKey¤Îǧ¾Ú¤òÍøÍѤ·¤Æ¡¢hns¤ÎGRPµ¡Ç½¤òblog¥Ä¡¼¥ë¤Ç¼Â¸½¤¹¤ë¡×¤ß¤¿¤¤¤Ê¥µ¥ó¥×¥ë¤ò½ñ¤³¤¦¤È»×¤Ã¤¿¤Î¤Ë¡¢½çÈ֤˽ñ¤¤¤Æ¤¤¤Ã¤¿¤éÁ´Á³¤½¤³¤Þ¤Ç¤¿¤É¤ê¤Ä¤±¤Í¡¼¤è¡£¼¡¤Ëǧ¾Ú·ë²Ì¤òCookie/¥»¥Ã¥·¥ç¥ó¤ËÊݸ¤¹¤ëÏäò½ñ¤¤¤Æ¤«¤é¡¢¤è¤¦¤ä¤¯TypeKey¤ÎÏ䫤ʡ¼¡£¤Ç¤âTypeKey¤ÏTypeKey¤Ç¿¿ÌÌÌܤËÀâÌÀ¤¹¤ë¤ÈÏä¬Ä¹¤¯¤Ê¤ê¤½¤¦¤À¤Ê¡£
_ PHP 4/5ξÍÑ¥³¥ó¥¹¥È¥é¥¯¥¿ (16:57)
class Foo
{
function Foo($a, $b)
{
$this->__construct($a, $b);
}
function __construct($a, $b)
{
//¤³¤³¤Ë½èÍý¤ò½ñ¤¯
}
}
¤Ã¤Æ½ñ¤Êý¤Ã¤Æ¡¢PHP 4/5¤ÇƱ¤¸¤è¤¦¤Ëư¤¤Ä¤Ä¡¢ÆÃ¤ËÉûºîÍѤʤ¤¤è¤Í¡©¡¡º£PHP 5¤¬Æ°¤¯´Ä¶¤¬¤Ê¤¤¤ó¤Ç»î¤·¤Æ¤Ê¤¤¤ó¤À¤±¤É¡£
2005-04-12 [ĹǯÆüµ]
_ ¤ª¤Þ¤±: ǧ¾Ú¾õÂÖ¤òÊݸ¤¹¤ëÊýË¡ (15:28)
¡Ø¼«Ê¬¤Çºî¤ëblog¥Ä¡¼¥ë¡ÊPHPÊԡˡ٤Τª¤Þ¤±µ»ö¤È¤·¤Æ¡¢¡ØÇ§¾Ú¾õÂÖ¤òÊݸ¤¹¤ëÊýË¡¡Ù¤òÄɲä·¤Þ¤·¤¿¡£
¤Á¤ç¤Ã¤È½ñ¤Èô¤Ð¤·¤¹¤®¤«¤â¡£¿äÚʤ¹¤ëµ¤ÎϤ¬¤Ê¤¤¤ó¤Ç¸«Ä¾¤·¤Æ¤Ê¤¤¡£¤³¤ì¤Ç¤è¤¦¤ä¤¯¼¡¤ÏTypeKey¤ÎÏÃ¤ËÆþ¤ì¤ë¤Ê¡£
2005-04-13 [ĹǯÆüµ]
_ PHP 4¤Ëthrow¡Ácatch¤òºÜ¤»¤Æ¤ß¤ë¼Â¸³ (10:07)
¤¢¤é¤«¤¸¤áÃǤäƤª¤¤Þ¤¹¤¬¡¢Ã±¤Ê¤ë¼Â¸³¤Ç¼ÂÍÑ¥ì¥Ù¥ë¤Ç¤Ï¤Ê¤¤¤Ç¤¹¡£
if (!class_exists('exception')) {
function throw($ex)
{
$ex->doCatch();
}
function __catch($ex)
{
die($ex->toString() . "\n" .$ex->getTraceAsString());
}
class Exception
{
var $message = 'Unknown exception';
var $code = 0;
var $file;
var $line;
var $_catchFunction;
var $_trace;
function Exception($catchFunction = '__catch', $message = NULL, $code = 0)
{
$this->_catchFunction = $catchFunction;
$this->message = isset($message) ? $message : $this->message;
$this->code = ($code > 0) ? $code : $this->code;
$this->_trace = debug_backtrace();
$this->file = $this->_trace[0]['file'];
$this->line = $this->_trace[0]['line'];
}
function getMessage()
{
return $this->message;
}
function getCode()
{
return $this->code;
}
function getFile()
{
return $this->file;
}
function getLine()
{
return $this->line;
}
function getTrace()
{
return $this->_trace;
}
function getTraceAsString()
{
return var_export($this->_trace, TRUE);
}
function toString()
{
return "Exception: Code: {$this->code}: {$this->message} in {$this->file} on line {$this->line}";
}
function doCatch()
{
call_user_func($this->_catchFunction, $this);
}
}
}
¤³¤ì¤Ç¡¢
throw(new Exception());
¤È¤«¤ä¤ë¤È¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¤½¤Î»þÅÀ¤Ç¤Î¥È¥ì¡¼¥¹¤¬½ÐÎϤµ¤ì¤ë¡£
function myCatch($ex)
{
//ÆÈ¼«¤Î¥¥ã¥Ã¥Á½èÍý
}
throw new Exception('myCatch');
¤È¤«¤ä¤ë¤È¡¢ÆÈ¼«¤Î¥¥ã¥Ã¥Á½èÍý¤¬¸Æ¤Ð¤ì¤ë¤è¤¦¤Ë¤Ê¤ë¡£
¤Ç¤â¶¯°ú¤Ë»ØÄꤷ¤¿´Ø¿ô or ¥á¥½¥Ã¥É¤ò¸Æ¤Ð¤»¤¿¤È¤³¤í¤Ç¡¢´Ø¿ô¤Ê¤é¤Ð¥¹¥³¡¼¥×¤¬Ê̤ˤʤäÁ¤ã¤¦¤«¤é¤Þ¤Ã¤È¤¦¤Ê·Ñ³½èÍý¤Ï¤Ç¤¤Ê¤¤¡£¥á¥½¥Ã¥É¤ò»ØÄꤹ¤ì¤Ð¥¤¥ó¥¹¥¿¥ó¥¹ÊÑ¿ô¤Þ¤Ç¤Ï°ì±þ¸«¤¨¤ë¤±¤É¡¢¤½¤ì¤Ç¤âÀ©Ìó¤¬Â礤¤¡£
¤È¤¤¤¦¤«¡¢catch½èÍý¤¬½ªÎ»¤·¤¿¤¢¤È¤Ëthrow¤Î¼¡¤Î¹Ô¤Ë¤·¤«Ìá¤ì¤Ê¤¤¤ó¤Ç¡¢¤¿¤¤¤Æ¤¤¤Î¾ì¹ç¤Ïcatch½èÍý¤Î¤¢¤È¤½¤Î¤Þ¤Þ½ªÎ»¤¹¤ë¤·¤«¤Ê¤¤¤Î¤¬Ã×̿Ū¡£·ë¶É¤Î¤È¤³¤í¡¢trigger_error¤ò°ì¸«Îã³°½èÍýÉ÷¤Ë½ñ¤¤¤Æ¸«¤»¤Æ¤¤¤ë¤À¤±¤Ë¤¹¤®¤Ê¤¤¡£
exit 2¤ß¤¿¤¤¤Ëreturn 2¤È¤«¤ä¤Ã¤Æ¡¢´Ø¿ô¤Î¸Æ¤Ó½Ð¤·¸µ¤Î¸Æ¤Ó½Ð¤·¸µ¤Þ¤Çæ½Ð¤Ç¤¤ì¤Ð¡¢¤Þ¤À»È¤¤½Ð¤¬¤¢¤ê¤½¤¦¤Ê¤ó¤À¤±¤É¡£
¤È¤¤¤¦¤ï¤±¤Ç¡¢¤¿¤À¤Î¼Â¸³¤Ç¤·¤¿¡£ÆÃ¤Ë¼ÂÍÑÀ¤Ï¤¢¤ê¤Þ¤»¤ó¡£PHP 4¤Çthrow new Exception()¤È½ñ¤¤¤Æ¤ß¤¿¤«¤Ã¤¿¤À¤±¤Ç¤¹¡£
_ tDiary°Üư¡õnora¥ê¥Ó¥ë¥É (14:35)
tDiary¤òµì¥µ¡¼¥Ð¡¼¤ËÌᤷ¤¿¤é¡¢¥È¥Ã¥×¥Ú¡¼¥¸¤Ïɽ¼¨¤µ¤ì¤ë¤ó¤À¤±¤É¡¢Æü¤´¤È¥Ú¡¼¥¸¤òɽ¼¨¤¹¤ë¤È¤³¤±¤ë¡£erbscan¤Ç¥¨¥é¡¼¤¬½Ð¤Æ¤¤¤¿¤ó¤Ç¡¢erbscan¤òÆþ¤ìľ¤·¤Æ¤ß¤¿¤±¤É¤À¤á¡£¤¦¡¼¤ó¡£¤È»×¤¤¤Ä¤Ä¡¢¤Ò¤È¤Þ¤ºRuby´Ø·¸¤Î¥é¥¤¥Ö¥é¥ê¤ò½çÈÖ¤ËÆþ¤ìľ¤·¤Æ¤¤¤Ã¤¿¤é¡¢nora¤òÆþ¤ì¤¿¤È¤³¤í¤ÇÉü³è¤·¤¿¡£Íý¶þ¤Ï¤è¤¯¤ï¤«¤é¤Ê¤¤¡£Ruby¤ÏÁ´Á³¤ï¤«¤Ã¤Æ¤¤¤Ê¤¤¤ó¤Ç¤³¤¦¤¤¤¦¤È¤¤Ëº¤¤ë¤ó¤À¤è¤Ê¡¼¡£
_ bk1Âбþ½ñÀÒ¥á¥âÅÐÏ¿bookmarklet (19:48)
bk1¤Ã¤Ä¡¼¤«¡¢Ã±¤ËHTMLÃæ¤ËºÇ½é¤Ë¸«¤Ä¤«¤Ã¤¿¡ÖISBN:******¡×¤ß¤¿¤¤¤Êʸ»úÎó¤ò°ú¤Ã¤«¤±¤Æ¤¤¤ë¤À¤±¤À¤±¤É¡£
bookmarklet: bk1ÍÑ
javascript:if (document.body.innerHTML.match(/ISBN\s*[:¡§]\s*([0-9X\-]+)/i)){var asin=RegExp.$1.replace(/-/g, '');document.location.href='http://1470.net/mm/memo_form.html?asin='+asin;}else{alert('NO ISBN');}
¤³¤ì¤Ç¡¢mylist¤Ç¼«Ê¬¤Îbk1¥Ö¥ê¡¼¥À¡¼ID¤òÅÐÏ¿¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ì¤Ð¡¢bk1¤ÇÇ㤤ʪ¤¹¤ë»þÍÑ¥¯¥ê¥Ã¥Ô¥ó¥°¥Ä¡¼¥ë¤È¤·¤Æ»È¤¨¤ë¤«¤Ê¡£
2005-04-14 [ĹǯÆüµ]
_ AjaxÈÇTrackback Tracer (00:52)
blogmap¤Ë¤Ï¼Â¸³Åª¤Ëtrackback¤ÎÄÉÀ×µ¡Ç½¤òºÜ¤»¤Æ¤¤¤¿¤ó¤À¤±¤É¡¢¥µ¡¼¥Ð¡¼¥µ¥¤¥É¤ÇÊ£¿ô³¬Áؤò¤¿¤É¤Ã¤Æ·ë²Ì¤òÊÖ¤·¤Æ¤¤¤¿¤ó¤¸¤ã¡¢¥ì¥¹¥Ý¥ó¥¹¤¬°¤¯¤Æ¤ä¤Ã¤Æ¤é¤ì¤Ê¤¤¤ó¤Ç¡¢¤¢¤Þ¤ê¼ÂÍÑŪ¤Êµ¡Ç½¤È¤·¤ÆÁ°Ì̤ˤϽФ·¤Æ¤¤¤Ê¤«¤Ã¤¿¡£
¤Ç¡¢Ajax¤¬Î®¹Ô¤ê¤À¤·¤Æ¤«¤é¡¢¡Ö¸½ºßblogmap¤ËÁȤ߹þ¤ó¤Ç¤¤¤ëtrackbackÄÉÀ×µ¡Ç½¤Ï¤½¤Î¤¦¤ÁAjax¤ò»È¤Ã¤Æ¡¢²òÀϾõ¶·¤Ë±þ¤¸¤Æ¥Ä¥ê¡¼¤Î»Þ¤òɽ¼¨¤·¤Æ¤¤¤¯¤è¤¦¤Ë²þ¤¤·¤è¤¦¡×¤È¤«¸À¤¦¤À¤±¸À¤Ã¤ÆÊüÃÖ¤·¤Æ¤¤¤¿¤ó¤À¤±¤É¡¢²¿¤È¤Ê¤¯ºÅÂ¥¤µ¤ì¤¿µ¤¤¬¤·¤¿¤ó¤Ç¡¢½Å¤¤¹ø¤ò¾å¤²¤ÆAjaxÈǤòºî¤Ã¤Æ¤ß¤¿¡£
ºî¤Ã¤Æ¤ß¤¿¤é¤Ê¤«¤Ê¤«²÷Ŭ¤Êưºî®ÅÙ¡£Ajax¤Ï¤³¤¦¤¤¤¦ÍÑÅӤǤÏÊØÍø¤À¤Í¡£¤¿¤È¤¨¤Ð¡¢¡Ö trackback trace: ¥Ë¡¼¥È¤ò¸ì¤ë»þ¤ÎΩÏÀÊýË¡¡×¤Ê¤ó¤«¤ò»î¤·¤Æ¤ß¤ë¤È¤¤¤¤¤«¤â¡£
¥¯¥í¥¹¥Ö¥é¥¦¥¶Âбþ¤ò¿¿ÌÌÌܤˤä¤ëµ¤¤Ë¤Ê¤ì¤Ê¤¤¤ó¤Ç¡¢Windows IE/Mozilla·Ï°Ê³°¤Çưºî¤¹¤ë¤«¤É¤¦¤«¤ï¤«¤é¤Ê¤¤¡£¤È¸À¤¤¤Ê¤¬¤é¡¢Opera 8¦Â¤Ç»î¤·¤Ëư¤«¤·¤¿¤éư¤¤¤¿¤è¡£¤¢¤é¤Ó¤Ã¤¯¤ê¡£
¤Á¤Ê¤ß¤Ë¸½ºß¸«¤Æ¤¤¤ë¥¨¥ó¥È¥ê¡¼¤Îtrackback¤òÄÉÀפ¹¤ëbookmarklet¤Ï¡¢ ¡Ötrace!¡×¤Ê¤ó¤Æ´¶¤¸¤Ë¤Ê¤ë¡£
¤¢¤ë¤¤¤Ï¼«¥µ¥¤¥È¤Î¥¨¥ó¥È¥ê¡¼¤ËÄÉÀ×¥ê¥ó¥¯¤òËä¤á¹þ¤ß¤¿¤±¤ì¤Ð¡¢
http://1470.net/bm/trace.html?url=¥¨¥ó¥È¥ê¡¼¤Î¥Ñ¡¼¥Þ¥ê¥ó¥¯
¤Ê¤ó¤ÆURL¤Ë¥ê¥ó¥¯¤·¤Æ¤ª¤±¤Ð¤¤¤¤¡£¥Ñ¡¼¥Þ¥ê¥ó¥¯¤ÏURL¥¨¥ó¥³¡¼¥É¤·¤Æ¤ª¤¯¤È³Î¼Â¡£movable type¤À¤Ã¤¿¤é¸ÄÊÌ¥¢¡¼¥«¥¤¥Ö¤Îtrackback´ØÏ¢¤Î¤¢¤¿¤ê¤Ë¤Ç¤â¡¢
<a href="http://1470.net/bm/trace.html?url=<$MTEntryPermalink encode_url="1"$>">trace!</a>
¤È¤«Æþ¤ì¤Æ¤ª¤±¤Ð¤¤¤¤¤Î¤«¤Ê¡©¡¡tdiary¤Ï¤è¤¯¤ï¤«¤é¤Ê¤¤¡£mod_rewrite¤òÆþ¤ì¤Æ¤¤¤ë¾ì¹ç¤ÈÆþ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢Î¾Âбþ¤Î½ñ¤Êý¤Ã¤Æ¤É¤¦¤¹¤ë¤ó¤À¤í¤¦¡©
¤È¤¤¤¦¤ï¤±¤Ç¡¢blog¥Ä¡¼¥ë³«È¯¼Ô¤Ê¤é¤Ó¤Ëblog¥µ¡¼¥Ó¥¹±¿±Ä¼Ô¤ÎÊý¡¹¤Ë¤ÏÀ§Èó¤È¤â¡Ötrackback autodiscovery¤Ø¤ÎÂбþ¡×¤Ê¤é¤Ó¤Ë¡Ötrackback ping url¤Ë__mode=rss¤ò¤Ä¤±¤ÆRSS·Á¼°¤Ç¥Ç¡¼¥¿¤ò½ÐÎϤ¹¤ëµ¡Ç½¡×¤ËÂбþ¤·¤ÆÍߤ·¤¤½ê¸¤Ç¤¢¤ê¤Þ¤¹¡£¤¸¤ã¤Ê¤¤¤È¼«Æ°¤Çtrace¤Ç¤¤Ê¤¤¤ó¤Ç¡£
_ WikiParser¤Î¥µ¥ó¥×¥ëWiki¤ò¥¢¥Ã¥×¥Ç¡¼¥È¤·¤Þ¤·¤¿ (16:07)
º£¤Þ¤Ç¤Î¼Â¸³¤ò¤¹¤Ù¤ÆÀ¹¤ê¹þ¤ó¤Ç¡¢
- Ä̾ï»þ¤Ï¡¢PHPÈǤÎWikiParser¤ò»È¤Ã¤Æ¥Ñ¡¼¥¹
- ÊÔ½¸Ãæ¤Ï¡¢JavaScriptÈǤÎWikiParser¤ò»È¤Ã¤Æ¥ê¥¢¥ë¥¿¥¤¥à¥×¥ì¥Ó¥å¡¼
- ¤µ¤é¤ËAjax¤ò»È¤Ã¤Æ¡¢Äê´üŪ¤ËÊÔ½¸Ãæ¤ÎÆâÍÆ¤ò¥µ¡¼¥Ð¡¼¤ËÊݸ
¤È¤¤¤¦¥Ð¡¼¥¸¥ç¥ó¤ËÊѤ¨¤Þ¤·¤¿¡£
¤Ã¤Æ¤ä¤Ã¤¿¤È¤³¤í¡¢JavaScriptÈǤΥѡ¼¥µ¡¼¤Ë¥Ð¥°¤¬¤¢¤ë¤³¤È¤¬È½ÌÀ¤·¤¿¤ó¤Ç¡¢¥½¡¼¥¹¤Ï¤Þ¤ÀºÜ¤»¤Æ¤Þ¤»¤ó¡Ê¤Þ¤¢JavaScript¤Î¥½¡¼¥¹¤Ï¸«¤ì¤ë¤±¤É¡Ë¡£¤â¤¦¤Á¤ç¤¤¥Ç¥Ð¥Ã¥°¤·¤Æ¤«¤é¤Þ¤È¤á¤Þ¤¹¡£
¤Á¤Ê¤ß¤Ë¥í¡¼¥«¥ë´Ä¶¤Ç¤Ï¡¢Êݸ´Ö³Ö¤ò¤â¤Ã¤Èû¤¯¡Ê¤Û¤Ü¥ê¥¢¥ë¥¿¥¤¥à¤Ë¡Ë¤·¤Æ»È¤Ã¤Æ¤¿¤ê¤·¤Þ¤¹¤±¤É¡¢¥ì¥ó¥À¥ê¥ó¥°·ë²Ì¤Î³Îǧ¤ÈÊݸ¤Î¼ê´Ö¤¬¾Ê¤±¤ë¤È¡¢Wiki¤Ï¥á¥â´Ä¶¤È¤·¤Æ¤Ê¤«¤Ê¤«²÷Ŭ¡£¤³¤ì¤Ç¡¢KamiWiki¤¯¤é¤¤»È¤¤¤ä¤¹¤¤¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹ÉÕ¤¤À¤Ã¤¿¤é¤â¤Ã¤ÈÊØÍø¤Ê¤ó¤À¤í¤¦¤±¤É¤Ê¡£
¤Þ¤¢¤É¤¦¤»¤½¤Î¤¦¤Á.NET¤Ç¥Ç¥¹¥¯¥È¥Ã¥×ÈǤòºî¤ë¤«¤é¡¢¤½¤Ã¤Á¤ÇUI¤Ï¶Å¤ì¤Ð¤¤¤¤¤«¡£
_ wtnabe [Trackback tracer ¤Ç¤¹¤¬¡¢¡Ö¥ê¥ó¥¯¤ò¥¯¥ê¥Ã¥¯¤·¤¿¤È¤¤Ë¤È¤ê¤¢¤¨¤º²¿¤«½Ð¤·¡¢¾ðÊ󤬼è¤ê½Ð¤»¤¿¤é¤½¤ì¤È¥¹..]
_ ¥Ò¥ó¥Ç¥£¥¯¥¨¥¹¥È [¼ÁÌä¤Ç¤¹¡£ ¡°ìÅÙ¤Ò¤í¤²¤¿¥Ä¥ê¡¼¤Ï¤¿¤¿¤Þ¤ì¤Ê¤¤¤Î¤¬»ÅÍͤʤ櫓¤Ç¤¹¤«¡© ¢ºÆµ¢¡Ê¤½¤ì¤È¤âñ¤Ë¥ë¡¼¥×¡Ë¤Ã¤Æ¤¤¤¦¤ó¤Ç¤¹¤«¡¢..]
_ ishinao [>wtnabe¤µ¤ó »Ò¥Î¡¼¥É¤Ë²¿¤«¤¬¤Ê¤¤¾ì¹ç¤â¤¢¤ë¤ó¤Ç¤¹¤è¤Í¡£¤Þ¤¢¤½¤Î¾ì¹ç¤Ï¤¤¤Ã¤¿¤ó½Ð¤·¤¿¡Önow loading¡×..]
2005-04-18 [ĹǯÆüµ]
_ ¤¢¡¼¤À¤ë¤¤ (10:56)
¶â¡¢ÅÚÍËÆü¤Ï¼Ò°÷ι¹Ô¤ÇÈ¢º¬¡£Ã뤫¤é¼ò°û¤ó¤Ç²¹Àô¤ËÆþ¤Ã¤ÆÄ«¤Þ¤ÇËã¿ý¥³¡¼¥¹¡£ÍâÆü¤Ïµ¢¤ê¤ÎÅż֤λþ´Ö¤Þ¤Ç¡¢ºä¤À¤é¤±¤ÎÈ¢º¬¤Î³¹¤ò¤¦¤í¤¦¤í¤·¤ÆÂÎÎϤò¾ÃÌס£ÆüÍËÆü¤Ë¤º¤¤¤Ö¤ó¿²¤¿¤ó¤À¤±¤É¡¢¤¤¤Þ¤À¤ËÂÎÎϤ¬²óÉü¤·¤Æ¤¤¤Ê¤¤¡£¤À¤ë¤À¤ë¡£²¿¤â¤ä¤ëµ„¤¬¤»¤ó¡£
2005-04-19 [ĹǯÆüµ]
_ tDiary¤Î¥¢¥ó¥«¡¼¥ê¥ó¥¯»þ¤Ë¥É¥¥å¥á¥ó¥È¥¿¥¤¥È¥ë¤òɽ¼¨¤¹¤ë (09:44)
highlight.rb¤ÎhighlightElement´Ø¿ô¤ÎºÇ¸å¤Î¹Ô¤Ë¡¢
document.title = highlightElem.innerHTML.replace(/<[^>]+?>/g, '');
¤Ê¤ó¤Æ¤â¤Î¤òÄɲ乤ë¤À¤±¡£
JavaScript¤Ë¤è¤ë¥¿¥¤¥È¥ë¤Î½ñ¤´¹¤¨¤Ê¤ó¤Ç¡¢SEOŪ¤Ë¤Ï°ÕÌ£¤¬¤Ê¤¤¤ó¤À¤±¤É¡¢ºÇ¶á¤Î¥½¡¼¥·¥ã¥ë¥Ö¥Ã¥¯¥Þ¡¼¥¯¥µ¡¼¥Ó¥¹¤Ê¤ó¤«¤Ç¤Ï¡¢document.title¤òJavaScript¤Ç¼èÆÀ¤·¤Æ¤¤¤ë¤â¤Î¤¬Â¿¤¤¤ó¤Ç¡Ê¤Á¤Ê¤ß¤ËMM/Memo¤Ç¤Ï¤ä¤Ã¤Æ¤Ê¤¤¤±¤É¡¢del.icio.us¤È¤«¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯¤È¤«¤Ï¤½¤¦¤¤¤¦bookmarklet¤òÍѰդ·¤Æ¤¤¤¿¤Ï¤º¡Ë¡¢¤½¤¦¤¤¤¦¾ì¹ç¤Ë¤Ï¤¤Á¤ó¤È¥¢¥ó¥«¡¼¥ì¥Ù¥ë¤Î¥¿¥¤¥È¥ë¤¬½¦¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤ÆÊØÍø¤«¤â¡£
¤É¤Á¤é¤«¤È¤¤¤¦¤È
if (highlightElem.tagName == 'H3') {
document.title = highlightElem.innerHTML.replace(/<[^>]+?>/g, '');
}
¤ÎÊý¤¬¤¤¤¤¤«¤â¤·¤ì¤Ê¤¤¡£¤½¤¦¤·¤Ê¤¤¤È¥Ä¥Ã¥³¥ß¤È¤«¤Î¥¢¥ó¥«¡¼¤Ç¤â¥¿¥¤¥È¥ë¤¬ÊѤï¤Ã¤Æ¤·¤Þ¤¦¡£
_ ¥¢¥½¥·¥¨¥¤¥È¹¹ð¥Ä¡¼¥ë µ¡Ç½Äɲà (16:05)
asin=????¤È¤¤¤¦·Á¤ÇASIN¤òľÀÜÉÕÍ¿¤¹¤ë¤³¤È¤Ç¡¢»ØÄꤷ¤¿ASIN¤Î¾ðÊó¤ò¼èÆÀ¤Ç¤¤ë¤è¤¦¤Ë¤·¤Þ¤·¤¿¡£¤Ã¤Æ¡¢¤ä¤Ã¤¿¤È¤³¤í¤Ç郎»È¤¦¤Î¤«¤Ã¤Æµ¤¤â¤¹¤ë¤±¤É¡¢¤Þ¤¢ºî¤Ã¤Æ¤ª¤±¤Ð¤½¤Î¤¦¤Á»È¤¤Æ»¤â½Ð¤Æ¤¯¤ë¤«¤â¡£
<script type="text/javascript" charset="euc-jp" src="http://1470.net/api/asin_cm.php?mode=js;associate=ishinao-22;asin=4091792758"></script>
¤Ê¤ó¤Æ½ñ¤¯¤È¡¢
¤Ê¤ó¤Æ´¶¤¸¤Ë¤Ê¤ë¤ó¤Ç¤¹¤è¡£CSS¤òÆÈ¼«ÄêµÁ¤·¤¿¤¤¾ì¹ç¤Ï¡¢class=myclass¤Ê¤ó¤Æ¤Ä¤±¤ë¤È¡¢É¸½à¤Î¥¹¥¿¥¤¥ë»ØÄ꤬¤Ê¤¯¤Ê¤Ã¤ÆÂå¤ï¤ê¤Ëdiv class="myclass"¤Ç°Ï¤Þ¤ì¤ë¤è¤¦¤Ë¤Ê¤ë¤ó¤Ç¡¢¤¢¤È¤ÏÆÈ¼«CSSÄêµÁ¤ÇŬÅö¤Ë¡£
_ BMediaNode: PHP¥×¥í¥°¥é¥Þ¤Îµ»Î̤òÃΤꤿ¤¤¤È¤ (17:15)
¤Á¤Ê¤ß¤Ë»ä¤¬PHP¥×¥í¥°¥é¥Þ¤Îµ»Î̤òÃΤꤿ¤¤»þ¤Ë¤Ï¡¢¥Õ¥¡¥¤¥ë¿ô¡¦¹½À®¤Ï̵À©¸Â¤Ç°Ê²¼¤Î¤è¤¦¤Ê»ÅÍͤΥ¹¥¯¥ê¥×¥È¤ò½ñ¤¤¤Æ¤â¤é¤¤¤Þ¤¹¡£
¤Ç½ñ¤«¤ì¤Æ¤¤¤ë»ÅÍͤΥ¹¥¯¥ê¥×¥È¤ò»î¤·¤Ë½ñ¤¤¤Æ¤ß¤¿¡£½êÍ×»þ´Ö¤Ï¸«Ä¾¤·¤ò´Þ¤á¤Æ30ʬ¤¯¤é¤¤¤«¡£¥¨¥é¡¼½èÍý¤Ë´Ø¤¹¤ë»ÅÍͤÏ¿¾¯Å¬Åö¤È¤¤¤¦¤«¡¢²ò¼á¤¬°ã¤Ã¤Æ¤¤¤ë¤«¤â¡£
index.php
<?php
define('ACTION_URL', './index.php');
define('INTERNAL_ENCODING', 'UTF-8');
mb_internal_encoding(INTERNAL_ENCODING);
set_include_path('.');
main();
function main()
{
header('content-type: text/html; charset=' . INTERNAL_ENCODING);
switch ($_SERVER['REQUEST_METHOD']) {
case 'POST':
$zip = importZip();
$errorMsg = validateZip($zip);
if ($errorMsg) {
showInputForm($zip, $errorMsg);
} else {
if (isset($_POST['btnNext'])) {
showCheckForm($zip);
} elseif (isset($_POST['btnSave'])) {
saveZip($zip);
showResultPage($zip);
} else {
showInputForm($zip);
}
}
break;
default:
showInputForm();
break;
}
die;
}
function importZip()
{
$zip = isset($_POST['zip']) ? $_POST['zip'] : '';
$zip = trim(mb_convert_kana($zip, 'KVas'));
$zip = str_replace('-', '', $zip);
return $zip;
}
function validateZip($zip)
{
if ($zip == '') {return 'ÆþÎϤµ¤ì¤Æ¤¤¤Þ¤»¤ó';}
if (!preg_match('|^[0-9]{7}$|', $zip)) {return 'ÆþÎÏÆâÍÆ¤¬Àµ¤·¤¯¤¢¤ê¤Þ¤»¤ó';}
return NULL;
}
function saveZip($zip)
{
// zip¤òÊݸ
}
function showInputForm($zip = '', $errorMsg = NULL)
{
$actionUrl = ACTION_URL;
include('tmpl/form.tmpl');
}
function showCheckForm($zip = '')
{
$actionUrl = ACTION_URL;
include('tmpl/check.tmpl');
}
function showResultPage($zip = '')
{
$actionUrl = ACTION_URL;
include('tmpl/result.tmpl');
}
function h($str)
{
return htmlspecialchars($str);
}
?>
tmpl/form.tmpl
<form method="POST" action="<?=h($actionUrl) ?>"> Í¹ÊØÈÖ¹æ: <input type="text" name="zip" value="<?=h($zip) ?>" size="10"> ¢¨È¾³Ñ¿ôÃÍ7·å¤ÇÆþÎϤ·¤Æ¤¯¤À¤µ¤¤ <br> <?php if (isset($errorMsg)) : ?> <p><?=h($errorMsg) ?></p> <?php endif ?> <input type="submit" name="btnNext" value="¼¡¤Ø"> </form>
tmpl/check.tmpl
<form method="POST" action="<?=h($actionUrl) ?>"> <input type="hidden" name="zip" value="<?=h($zip) ?>"> Í¹ÊØÈÖ¹æ: <?=substr($zip, 0, 3) . '-' . substr($zip, 3) ?> <br> <p>¾åµ¤Ç¤è¤í¤·¤¤¤Ç¤¹¤«¡©</p> <input type="submit" name="btnBack" value="Ìá¤ë"> <input type="submit" name="btnSave" value="¼¡¤Ø"> </form>
tmpl/result.tmpl
ÆþÎϤµ¤ì¤¿Í¹ÊØÈÖ¹æ¤Ï <?=substr($zip, 0, 3) . '-' . substr($zip, 3) ?>¤Ç¤¹¡£
HTML¥Ø¥Ã¥À¡¦¥Õ¥Ã¥¿¤È¤«¤Ï¾Êά¡£¤Þ¤¢É¬Íפʤé¤ÐŬÅö¤Ë¥Æ¥ó¥×¥ì¡¼¥È¤ÇÊ䤨¤Ð¤¤¤¤¤·¡£¥½¡¼¥¹¤Îʸ»ú¥³¡¼¥É¤ÏUTF-8¡£¥¹¥¯¥ê¥×¥È¤ÎƬ¤Ç¶¯À©Åª¤Ëmb_internal_encoding¤ò¥»¥Ã¥È¤¹¤ë¤Î¤Ï¡¢¤¤¤Þ¤¤¤ÁÀßÄ꤬¤É¤¦¤Ê¤Ã¤Æ¤¤¤ë¤«¤ï¤«¤é¤Ê¤¤¥µ¡¼¥Ð¡¼¤Çư¤«¤¹¤¿¤á¤ÎÀ¸³è¤ÎÃηá£
¤Ã¤Æ´¶¤¸¤Ç¡¢²¶¤Ê¤éOOP¤Ï»È¤ï¤º¤Ë½ñ¤¯¤Ê¡¼¡£¤È¤¤¤¦¤«¡¢PHP¤ÎÍøÅÀ¤Ï¤³¤ÎÄøÅ٤Υ³¡¼¥É¤Ê¤é¤Ð¡Ê1²ó¤³¤Ã¤¤ê¥¹¥¯¥é¥Ã¥Á¤«¤é½ñ¤¯¤Ê¤é¤Ð¡Ë¤³¤ó¤Ê´¶¤¸¤Ç¼ê·Ú¤Ë½ñ¤±¤ë¤È¤³¤í¤À¤È»×¤¦¤ó¤À¤±¤É¡£
¤Þ¤¢¤³¤¦¤¤¤¦¥³¡¼¥É¤·¤«½ñ¤±¤Ê¤¤¡Ê¥¯¥é¥¹¤ò»È¤Ã¤¿¥³¡¼¥É¤¬Íý²ò¤Ç¤¤Ê¤¤¡õPEARÅù¤ò»È¤¤¤³¤Ê¤»¤Ê¤¤¡Ë¤Ã¤Æ¤ó¤¸¤ãÂ絬ÌϤʥ¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò½ñ¤¯¤È¤¤Ë¤Ä¤¤¤Æ¹Ô¤±¤Ê¤¯¤Ê¤ë¤À¤í¤¦¤±¤É¡£
¤È¤¤¤¦¤ï¤±¤Ç¡¢²Ë¤ÊPHP¥×¥í¥°¥é¥Þ¤ÎÊý¡¢¤³¤Î»ÅÍͤǼ«Ê¬¤¬½ñ¤¯¤Ê¤é¤³¤¦½ñ¤¯¡¢¤È¤¤¤¦¥µ¥ó¥×¥ë¤ò½ñ¤¤¤Æ¤ß¤Þ¤»¤ó¤«¡£¤Á¤Ê¤ß¤Ë¥¯¥é¥¹¤ò¥Í¡¼¥à¥¹¥Ú¡¼¥¹Âå¤ï¤êÄøÅ٤˻Ȥä¿¥µ¥ó¥×¥ë¤â»î¤·¤Ë½ñ¤¤¤Æ¤ß¤¿¡£
index2.php
<?php
define('INTERNAL_ENCODING', 'UTF-8');
mb_internal_encoding(INTERNAL_ENCODING);
set_include_path('.');
main();
function main()
{
header('content-type: text/html; charset=' . INTERNAL_ENCODING);
$form =& new ZipForm();
$form->execute();
}
class ZipForm
{
var $_actionUrl;
var $_zip;
var $_errorMsg;
var $_formMode;
function ZipForm($options = array())
{
$this->__construct($options);
}
function __construct($options = array())
{
$this->_actionUrl = isset($options['actionUrl']) ?
$options['actionUrl'] : $_SERVER['PHP_SELF'];
$this->_zip = '';
$this->_errorMsg = NULL;
$this->_formMode = 'form';
}
function getZip()
{
return $this->_zip;
}
function getErrorMsg()
{
return $this->_errorMsg;
}
function getMode()
{
return $this->_formMode;
}
function execute()
{
switch ($_SERVER['REQUEST_METHOD']) {
case 'POST':
$this->import();
if ($this->isValid()) {
switch ($this->getMode()) {
case 'check':
$this->showCheckForm();
break;
case 'save':
$this->save();
$this->showResultPage();
break;
case 'input':
default:
$this->showInputForm();
break;
}
} else {
$this->showInputForm();
}
break;
default:
$this->showInputForm();
break;
}
}
function import()
{
$this->_zip = isset($_POST['zip']) ? $_POST['zip'] : '';
$this->_zip = trim(mb_convert_kana($this->_zip, 'KVas'));
$this->_zip = str_replace('-', '', $this->_zip);
if (isset($_POST['btnNext'])) {
$this->_formMode = 'check';
} elseif (isset($_POST['btnSave'])) {
$this->_formMode = 'save';
} elseif (isset($_POST['btnBack'])) {
$this->_formMode = 'input';
} else {
$this->_formMode = 'input';
}
}
function isValid()
{
$this->_errorMsg = NULL;
if ($this->_zip == '') {
$this->_errorMsg = 'ÆþÎϤµ¤ì¤Æ¤¤¤Þ¤»¤ó';
} elseif (!preg_match('|^[0-9]{7}$|', $this->_zip)) {
$this->_errorMsg = 'ÆþÎÏÆâÍÆ¤¬Àµ¤·¤¯¤¢¤ê¤Þ¤»¤ó';
}
return !isset($this->_errorMsg);
}
function showInputForm()
{
$actionUrl = $this->_actionUrl;
$zip = $this->_zip;
$errorMsg = $this->_errorMsg;
include('tmpl/form.tmpl');
}
function showCheckForm()
{
$actionUrl = $this->_actionUrl;
$zip = $this->_zip;
$errorMsg = $this->_errorMsg;
include('tmpl/check.tmpl');
}
function showResultPage()
{
$actionUrl = $this->_actionUrl;
$zip = $this->_zip;
$errorMsg = $this->_errorMsg;
include('tmpl/result.tmpl');
}
function save()
{
// zip¤òÊݸ¤¹¤ë¥³¡¼¥É¤ò¤³¤³¤Ë½ñ¤¯
}
}
function h($str)
{
return htmlspecialchars($str);
}
?>
¸µ¤Î´Ø¿ô·¿¥³¡¼¥É¤ò¤Ç¤¤ë¤À¤±Î®ÍѤ·¤è¤¦¤È¤·¤¿¤»¤¤¤Ç¡¢À߷ץݥꥷ¡¼¤¬¤Ê¤ó¤È¤âÃæÅÓȾü¤Ê´¶¤¸¤À¤Í¡£executeÁêÅö¤Î½èÍý¤ò³°½Ð¤·¤Ë¤¹¤ë¤«¥¯¥é¥¹ÆâÉô¤Ç´°·ë¤µ¤»¤ë¤«Ì¤ä¿·ë²Ì¡¢¥¥á¥é¤Î¤è¤¦¤Ê¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
¤â¤·¤Á¤ã¤ó¤Èºî¤ë¤Ê¤é¤Ð¡¢É½¼¨·Ï¤Ï¥¯¥é¥¹¤ÎÃæ¤Ë´Þ¤Þ¤»¤º¤Ë¡¢¥¯¥é¥¹¼«ÂΤÏDataObjectŪ¤Ëºî¤ë¤À¤í¤¦¤Ê¡£¤Ç¡¢É½¼¨·Ï¤Ï³°Éô¥³¡¼¥É¡Ü¥Æ¥ó¥×¥ì¡¼¥È¥é¥¤¥Ö¥é¥ê¤Ë¤ªÇ¤¤»¤Ã¤Æ´¶¤¸¤Ç¡£
HTML_QuickForm¡ÜSmarty¤ò»È¤Ã¤¿¥µ¥ó¥×¥ë¤È¤«¤â½ñ¤¤¤Æ¤ß¤è¤¦¤«¤È»×¤Ã¤¿¤±¤É¡¢ºÇ¶á»È¤Ã¤Æ¤Ê¤¤¤ó¤Ç¥Ñ¥¹¡£ºÇ¶á¤Ï¼«Á°¤Î¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤ÎÃæ¤Ë°Â½»¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤ë¤ó¤Ç¡¢Â¾¤Î¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤ò»È¤¦¤Î¤¬¤À¤ë¤¤¤ó¤À¤è¤Ê¡¼¡£
2005-04-20 [ĹǯÆüµ]
_ tDiary¤Î¥¢¥ó¥«¡¼¥ê¥ó¥¯»þ¤Ë¥É¥¥å¥á¥ó¥È¥¿¥¤¥È¥ë¤òɽ¼¨¤¹¤ë ¤½¤Î2 (13:11)
ºòÆü¤Î¥Ð¡¼¥¸¥ç¥ó¤«¤é½ô¡¹Äɲ䷤ơ¢·ë¶É¤³¤¦¤Ê¤Ã¤¿¡£
- highlight.rb.diff
23,27d22
<
< if (highlightElem.tagName == 'H3') {
< var h1 = document.getElementsByTagName('H1')[0];
< document.title = (highlightElem.innerHTML + ' - ' + h1.innerHTML).replace(/<[^>]+?>/g, '').substr(2);
< }
tDiary¤Ïɬ¤ºH1¤ËÆüµ¥¿¥¤¥È¥ë¤Ã¤Æ¤Ä¤¯¤è¤Í¡©¡¡¤È¤¤¤¦¤³¤È¤òÁ°Äó¤Ë¡¢Æüµ¥¿¥¤¥È¥ë¤ò¤±¤Ä¤ËÉÕ¤±¤Æ¤ß¤¿¡£¤¢¤È¡¢ÃÊÍ¥ó¥«¡¼¤Ã¤ÆCSS¤Ç²èÁü¤È¤«¤òɽ¼¨¤¹¤ë¤³¤È¤¬¤¢¤Ã¤Æ¤â¡¢¼ÂÂΤȤ·¤Æ¤Î¥Æ¥¥¹¥È¤Ï¤¤¤Ä¤â¡Ö_¡×¤Ê¤ó¤À¤è¤Í¡©¡¡¤Ã¤Æ¤³¤È¤Ç¡¢H3¤Î¥¿¥¤¥È¥ë¤«¤é¥¿¥°¤ò½üµî¤·¡¢¤¢¤¿¤Þ2ʸ»ú¤òºï¤Ã¤Æ¤ß¤¿¡£
¤È¤¤¤¦¤ï¤±¤Ç¡¢JavaScript¥ª¥ó¤Ê´Ä¶¤Ê¤é¤Ð¡¢¤³¤³¤ÎÃÊÍ¥ó¥«¡¼¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤È¡Ö[tDiary][MM] tDiary¤Î¥¢¥ó¥«¡¼¥ê¥ó¥¯»þ¤Ë¥É¥¥å¥á¥ó¥È¥¿¥¤¥È¥ë¤òɽ¼¨¤¹¤ë ¤½¤Î2 (13:11) - tdiary.ishinao.net¡×¤Ê¤ó¤Æ´¶¤¸¤Ë¤Ê¤Ã¤Æ¡¢¤½¤Î¾õÂÖ¤Çdel.icio.us¤È¤«¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯¤È¤«¤Ëbookmarklet¤ò»È¤Ã¤ÆÅÐÏ¿¤¹¤ë¤È¡¢¤½¤Î¥¿¥¤¥È¥ë¤¬¤Á¤ã¤ó¤ÈÅÐÏ¿¤µ¤ì¤ë¤ï¤±¤Ç¤¹¤Í¡£
¤Á¤Ê¤ß¤ËMM/Memo¤Ç¤âbookmarklet¤Ç¸½ºß¥Ö¥é¥¦¥¶¤¬É½¼¨¤·¤Æ¤¤¤ë¥¿¥¤¥È¥ë¤òÅϤ·¤¿¤¤¾ì¹ç¤Ï¡¢
¤Ê¤ó¤Æ´¶¤¸¡©¡¡¥¿¥¤¥È¥ë¤À¤±¤Ç¤Ê¤¯¡¢ÁªÂò¤µ¤ì¤Æ¤¤¤ëÈϰϤ¬¤¢¤Ã¤¿¤é¤½¤ÎÉôʬ¤ò¥Æ¥¥¹¥È¤È¤·¤ÆÁ÷¤ë¤è¤¦¤Ë¤â¤·¤Æ¤¢¤ë¡£
_ BMediaNode: PHP¥×¥í¥°¥é¥Þ¤ÎÎÏÎ̤ò·×¤ë ¤½¤Î2 (18:49)
OOP¤Ã¤Æ¤Î¤Ï¡¢ÍפÏMVC¤Î¤³¤È¤Ê¤Î¤«¡£¤Ã¤Æ¤³¤È¤Ç¡¢MVC¤Ç½ñ¤¤¤Æ¤ß¤¿¡£model¤òNULL¤ÇÊÖ¤¹¥Ñ¥¿¡¼¥ó¤Ï¤¢¤ó¤Þ¤êÈþ¤·¤¯¤Ê¤¤¤Ê¡¼¡£¶õ¤Îmodel¤Ç¤âÊÖ¤·¤¿Êý¤¬¤¤ì¤¤¤«¡£¤Ç¤â¤Þ¤¢¤¢¤Þ¤ê¿¼¤¯¹Í¤¨¤ë¤³¤È¤Ï¤ä¤á¤Æ¤ª¤³¤¦¡£
index3.php
<?php
main();
function main()
{
header('content-type: text/html; charset=UTF-8');
$ctrl =& new MyController();
$ctrl->run();
$model =& $ctrl->getModel();
$view =& $ctrl->getView();
$view->display($model);
}
class MyController
{
var $_model;
var $_view;
function run()
{
switch ($_SERVER['REQUEST_METHOD']) {
case 'POST':
$this->_model =& new MyModel();
switch ($this->_getMode()) {
case 'input':
$this->_view =& new MyViewInput();
break;
case 'check':
$this->_view =& new MyViewCheck();
break;
case 'result':
$this->_view =& new MyViewResult();
break;
}
break;
default:
$this->_view =& new MyViewInput();
break;
}
}
function _getMode()
{
if (isset($_POST['btnSave']) && $this->_model->isValid()) {
return 'result';
} elseif (isset($_POST['btnNext']) && $this->_model->isValid()) {
return 'check';
} else {
return 'input';
}
}
function &getModel()
{
return $this->_model;
}
function &getView()
{
return $this->_view;
}
}
class MyModel
{
var $_params = array();
var $_errors = array();
function MyModel()
{
$this->_init();
$this->_validate();
}
function _init()
{
$this->_param = array();
$zip = isset($_POST['zip']) ? $_POST['zip'] : '';
$zip = trim(mb_convert_kana($zip, 'KVas'));
$zip = str_replace('-', '', $zip);
$this->_params['zip'] = $zip;
}
function _validate()
{
$this->_errors = array();
if ($this->_params['zip'] == '') {
$this->_errors[] = 'ÆþÎϤµ¤ì¤Æ¤¤¤Þ¤»¤ó';
} elseif (!preg_match('|^[0-9]{7}$|', $this->_params['zip'])) {
$this->_errors[] = 'ÆþÎÏÆâÍÆ¤¬Àµ¤·¤¯¤¢¤ê¤Þ¤»¤ó';
}
}
function getParams()
{
return $this->_params;
}
function isValid()
{
return count($this->_errors) == 0;
}
function getErrors()
{
return $this->_errors;
}
}
class MyViewInput
{
function display($model)
{
if (isset($model)) {
extract($model->getParams());
$errors = $model->getErrors();
} else {
$zip = NULL;
}
include 'templates/input.tmpl';
}
}
class MyViewCheck
{
function display($model)
{
extract($model->getParams());
include 'templates/check.tmpl';
}
}
class MyViewResult
{
function display($model)
{
extract($model->getParams());
include 'templates/result.tmpl';
}
}
function h($str)
{
return htmlspecialchars($str);
}
?>
¥Æ¥ó¥×¥ì¡¼¥È¤Ï¡¢ºòÆü¤Î¤ä¤Ä¤È¤Ï¤Á¤ç¤Ã¤ÈÊѤï¤Ã¤Æ¤¤¤ë¤ó¤À¤±¤ÉÌÌÅݤ¯¤µ¤¤¤«¤é¾Êά¡£¥¨¥é¡¼¤¬ÇÛÎó¤Ë¤Ê¤Ã¤Æ¡¢action¤ÎURL¤Ï¥Æ¥ó¥×¥ì¡¼¥È¦¤Ç²ò·è¡Ê$_SERVER['PHP_SELF']¡Ë¤¹¤ë¤è¤¦¤Ë¤·¤¿¤À¤±¡£
¤è¤êµ¬ÌϤ¬Â礤¤¥Õ¥©¡¼¥à¤È¤«¤Ë³ÈÄ¥¤¹¤ë¤³¤È¤ò¹Í¤¨¤¿¥×¥í¥È¥¿¥¤¥×¤È¤·¤Æ½ñ¤¯¤Ê¤é¤³¤¦¤¤¤¦½ñ¤Êý¤â¤¢¤ê¤«¤Ê¡¼¡£¤¿¤À¡¢¤³¤ì¤Ï¤â¤È¤â¤È¤Î»ÅÍͤòËþ¤¿¤¹¤Ë¤ÏŬºàŬ½ê¤òÂçÉý¤Ë¤Ï¤ß½Ð¤Æ¤¤¤ëµ¤¤¬¤¹¤ë¡£
¤Þ¤¢¡¢Æ¬¤ÎÂÎÁà¤Ë¤Ï¤¤¤¤¤è¤Í¡£Â¿Ê¬¿Í¤Ë¤è¤Ã¤Æ¤Ï¡¢MVC¤ÎÀÚ¤êʬ¤±ÈϰϤ¬°ã¤Ã¤Æ¤¯¤ë¤ó¤À¤í¤¦¤Ê¡£
¤¢¤¢
$ctrl->_getMode()¤¬$ctrl->run¤ÎÃæ¤Îswitch¤Î¾ò·ï¤Ë°Í¸¤·¤Æ¤¤¤ë¡£´í¸±´í¸±¡£
_ ¥Æ¡¼¥Þ¤òÄɲà (19:31)
MM/Memo¤Î¸Ä¿Í¥Ú¡¼¥¸¤Ç»È¤¨¤ë¥Æ¡¼¥Þ¤È¤·¤Æ¡¢Treetop¡¢¥Þ¡¼¥¬¥ì¥Ã¥È¡¢Digital Gadgets¡¢¥«¡¼¥Æ¥ó¡¢Orange Flower¡¢¤ª²Ö¸«¡¢Sleepy Kitten¡¢¥Ê¥È¥ê¥¦¥à¥é¥ó¥×¤òÄɲᣤäġ¼¤«¡¢Sleepy Kitten¤ò»È¤Ã¤Æ¤ß¤¿¤«¤Ã¤¿¤À¤±¡£
2005-04-21 [ĹǯÆüµ]
_ tDiary¤Î¥¢¥ó¥«¡¼¥ê¥ó¥¯»þ¤Ë¥É¥¥å¥á¥ó¥È¥¿¥¤¥È¥ë¤òɽ¼¨¤¹¤ë ¤½¤Î3 (14:43)
ÃÊÍ¥ó¥«¡¼¤ÎƬ¤Ïɬ¤º¤·¤â1ʸ»ú¤Ç¤Ï¤Ê¤¤¤è¤¦¤Ê¤ó¤Ç¡¢ºÇ½é¤ÎȾ³Ñ¥¹¥Ú¡¼¥¹¤Þ¤Ç¤ò½üµî¤¹¤ë¤è¤¦¤ËÊѹ¹¡£¤¢¤È¡¢Æüµ¥¿¥¤¥È¥ë¤Ïh1¤«¤é¼èÆÀ¤¹¤ë¤Î¤Ï¤ä¤á¤Æ¡¢tDiary¦¤ÇJavaScript¤ËËä¤á¹þ¤à¤è¤¦¤Ë¤·¤Æ¤ß¤¿¡£
23,27d22
<
< if (highlightElem.tagName == 'H3') {
< var title = "#{@conf.html_title}(#{@date.strftime('%Y-%m-%d')})";
< document.title = (highlightElem.innerHTML + ' - ' + title).replace(/<[^>]+?>/g, '').replace(/^[^ ]+ (.*)/, '$1');
< }
¤³¤ì¤À¤È¤â¤·¤â@conf.html_title¤Ë¡Ö"¡×¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¤è¤¦¤Ê¾ì¹ç¤Ë¤Þ¤º¤«¤Ã¤¿¤ê¤¹¤ë¤ó¤À¤±¤É¡¢¤Ê¤ó¤«¾åµ¤Îʸ̮¤Ç¡Ö"¡×¤òŬÀڤ˥¨¥¹¥±¡¼¥×¤¹¤ëÊýË¡¤¬Îɤ¯¤ï¤«¤é¤Ê¤«¤Ã¤¿¤ó¤Ç¥Ñ¥¹¡£@conf.html_title.tr('"', '\"')¤À¤È¥À¥á¤Ê¤ó¤À¤è¤Ê¡¼¡£
Ruby¤Î¥Ò¥¢¥É¥¥å¥á¥ó¥È¤È¼°Å¸³«¤¬Æþ¤ì»Ò¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¡¢¤µ¤é¤Ë¤½¤Î·ë²Ì¤òJavaScript¤Îʸ»úÎó¤ËËä¤á¹þ¤à¾ì¹ç¡¢Å¬Àڤʥ¨¥¹¥±¡¼¥×¤Ï¤É¤¦½ñ¤¯¤Î¤¬Àµ²ò¤Ç¤·¤ç¤¦¡©
¥Í¥¿¤¬¤«¤Ö¤Ã¤Æ¤¤¤¿
¡ÖºÇ½é¤ÎȾ³Ñ¥¹¥Ú¡¼¥¹¤Þ¤Ç¤ò½üµî¤¹¤ë¡×¤È¤¤¤¦¥Í¥¿¤¬¤«¤Ö¤Ã¤Æ¤¤¤¿¡£
replace(/[^ ]* /, '')
¤ÎÊý¤¬¥¹¥Þ¡¼¥È¤Êɽ¸½¤«¡£
¤Á¤Ê¤ß¤Ëdocument.titletitle¥¿¥°¤Ï¡¢title_tag.rb¤ò»È¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤½¤ÎÆü¤Î¤¹¤Ù¤Æ¤ÎÃÊÍ¥¤¥È¥ë¤¬´Þ¤Þ¤ì¤Æ¤·¤Þ¤¦¤ó¤Ç¡¢Æüµ¥¿¥¤¥È¥ë¼èÆÀÍѤˤϻȤ¨¤Ê¤¤¤ó¤Ç¤¹¤è¤Í¡¼¡£
_ MM/Memo¤Ç¤â°ì±þÂбþ¥³¡¼¥É¤ò¤Ä¤±¤Æ¤ß¤¿ (15:10)
MM/Memo¤Î¾ì¹ç¤ÏTypeKeyǧ¾Ú¤ò»È¤Ã¤Æ¤¤¤ë´Ø·¸¾å¡¢Ä¾ÀÜ¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤«¤éPOST¤¹¤ë¤è¤¦¤Ê¥Ä¡¼¥ë¤Ï»È¤¨¤Ê¤¤¡Ê¤â¤Î¤¹¤´¤¯´èÄ¥¤ì¤Ð»È¤¨¤Ê¤¯¤â¤Ê¤¤¤±¤É¡Ë¤«¤é¡¢¤³¤¦¤¤¤¦¥Á¥§¥Ã¥¯¤òƳÆþ¤·¤¿¤»¤¤¤Ç¡¢¤½¤Î¼ê¤Î¥Ä¡¼¥ë¤¬»È¤¨¤Ê¤¯¤Ê¤ë¤È¤¤¤¦¿Í¤Ï¤¤¤Ê¤¤¤è¤Í¡©¡¡¥Ö¥é¥¦¥¶¾å¤Çbookmarklet¤È¤«»È¤Ã¤ÆGET¤Ç¥Ñ¥é¥á¡¼¥¿ÅϤ·¤·¤Æ¤¤¤ë¾ì¹ç¤ÏÌäÂê¤Ê¤¤¤·¡£
¤Á¤Ê¤ß¤Ë¥Á¥§¥Ã¥¯½èÍý¤ÎÆâÍÆ¤Ï¡¢¥Õ¥©¡¼¥à¤òÀ¸À®¤¹¤ë¤È¤¤Ë¡¢
$check_key = md5([¥æ¡¼¥¶¡¼ID] , [ÈëÌ©¤Îʸ»úÎó]);
¤ÇÀ¸À®¤·¤¿¥Á¥§¥Ã¥¯¥³¡¼¥É¤ò¡¢
<input type="hidden" name="check_key" value="<?=h($check_key) ?>">
¤Ê¤ó¤Æ´¶¤¸¤ÇËä¤á¹þ¤ó¤Ç¤ª¤¡¢POST¤µ¤ì¤¿¤È¤¤Ë¡¢
if ($_POST['check_key'] != md5([¥æ¡¼¥¶¡¼ID] , [ÈëÌ©¤Îʸ»úÎó])) {
die('ǧ¾Ú¼ºÇÔ');
}
¤·¤Æ¤¤¤ë¤À¤±¤Í¡£Ç§¾Ú¥¡¼¤Ï¥æ¡¼¥¶¡¼ID¤«¤éÀ¸À®¤·¤Ê¤¯¤Æ¤â¡¢¤Þ¤Ã¤¿¤¯¥é¥ó¥À¥à¤Ëºî¤Ã¤Æ¥»¥Ã¥·¥ç¥ó¤ËÊݸ¤·¤Æ¤ª¤¤¤Æ¤â¤¤¤¤¡£
¤½¤ì¤Ë¤·¤Æ¤â¡¢¤³¤ì¤«¤é¤Î¸ø³«Web¥¢¥×¥ê¤Ï¤ß¤ó¤Ê¤³¤¦¤¤¤¦Âкö¤òɸ½à¤Ç¼è¤é¤Ê¤¤¤È¤À¤á¤Ê¤ó¤À¤í¤¦¤Ê¡¼¡£¤³¤ì¤«¤éºî¤ë¥Õ¥©¡¼¥à¼þ¤ê¤Î¥é¥¤¥Ö¥é¥ê¤Ë¤Ï¡¢¤³¤¦¤¤¤¦µ¡Ç½¤òɸ½à¤Ç»ý¤¿¤»¤Æ¤ª¤¯¤Ù¤¤«¡£
¤¢¡¢¤Ç¤¤ì¤Ð¥ê¥Õ¥¡¥é¡¼¥Á¥§¥Ã¥¯¤ÇÃÆ¤¯¤è¤¦¤Ê¼ÂÁõ¤Ï¤ä¤á¤Æ¤Í¡£²¶¤Ï´ðËÜŪ¤Ë¥ê¥Õ¥¡¥é¡¼¥ª¥Õ¤¬É¸½à¤À¤·¡£
_ tDiary¤Î¥¢¥ó¥«¡¼¥ê¥ó¥¯»þ¤Ë¥É¥¥å¥á¥ó¥È¥¿¥¤¥È¥ë¤òɽ¼¨¤¹¤ë ¤½¤Î4 (18:23)
·èÄêÈǤϡ¢¤³¤ó¤Ê´¶¤¸¤«¤Ê¡¼¡£
23,28d22
<
< if (highlightElem.tagName == 'H3') {
< var diary_title = "#{@conf.html_title.gsub(/"/, '\\"')} (#{@date.strftime('%Y-%m-%d')})";
< var section_title = highlightElem.innerHTML.replace(/<[^>]+?>/g, '').replace(/^[^ ]* /, '');
< document.title = section_title + ' - ' + diary_title;
< }
·ë¶É¡Ö"¡×¤Î¥¨¥¹¥±¡¼¥×¤Ë¤Ä¤¤¤Æ¤Ï¡¢
print '"'.gsub(/"/, '\\"')
¤Ç¡Ö"¡×¤Ë¥¨¥¹¥±¡¼¥×¤Ç¤¤¿¤±¤É¡¢¤Ê¤ó¤Ç
print '"'.tr('"', '\\"')
¤Î·ë²Ì¤¬¡Ö"¡×¤Ë¤Ê¤Ã¤Æ¡¢
print '"'.tr('"', '\\\\"')
¤Î·ë²Ì¤¬¡Ö\¡×¤Ë¤Ê¤ë¤Î¤«¤è¤¯¤ï¤«¤é¤ó¤«¤Ã¤¿¡£tr¤Ègsub¤Ç¤Ï²¿¤¬°ã¤¦¤ó¤À¡©
¤¢¤¢¡ª
tr¤Ïʸ»úÎóÃÖ´¹¤¸¤ã¤Ê¤¯¤Æ¡¢Ê¸»úñ°Ì¤Ç¤ÎÃÖ´¹¤Ê¤Î¤«¡ª
_ HTML_QuickForm¤ò»È¤¦¾ì¹ç (22:12)
<label><input type="checkbox" name="foo[]" value="abc">abc</label> <label><input type="checkbox" name="foo[]" value="def">def</label> <label><input type="checkbox" name="foo[]" value="ghi">ghi</label>
¤ß¤¿¤¤¤Ê»È¤¤Êý¤ÏÁÛÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤Î¤«¤Ê¡©
_ ¤¿¤À¤¿¤À¤· [>²¶¤Ï´ðËÜŪ¤Ë¥ê¥Õ¥¡¥é¡¼¥ª¥Õ¤¬É¸½à¤À¤· ¤À¤è¤Í¡¼¡¢¤ä¤Ã¤Ñ¤·¡£ ¤¢¡¢hilight.rb¤Î²þ¤¤Ï¡¢·èÄêÈǤ¬¤Ç¤¤¿¤é¶µ¤¨..]
2005-04-23 [ĹǯÆüµ]
_ Re:¡ÖAlpha Geek Tracker¡× (12:34)
¾¥µ¡¼¥Ó¥¹¤Î¥Ö¥Ã¥¯¥Þ¡¼¥¯¤â¼è¤ê¹þ¤á¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤ì¤¿¤é¤¤¤¤¤Î¤Ë¤Ê¡¼
¤½¤Î¼ê¤Îµ¡Ç½¤ÏMM¤Î¤ªµ¤¤ËÆþ¤ê¥ê¥¹¥È¤òºî¤ë¤È¤¤Ë¹Í¤¨¤¿¤·¡¢ºî¤ë¤Î¤â´Êñ¤À¤È»×¤¦¤ó¤À¤±¤É¡¢¸¢Íø´ØÏ¢¤ÎÌäÂ꤬¤Ç¤Æ¤¤½¤¦¤Ê¤ó¤Ç¡¢¥µ¡¼¥Ó¥¹¤È¤·¤Æ¸ø³«¤¹¤ë¤Î¤Ï¤Á¤ç¤Ã¤ÈÆñ¤·¤¤¤À¤í¤¦¤Ê¡¼¤È»×¤Ã¤Æ¤ä¤á¤¿¡£
¿·Ãå¤È¤«¿Íµ¤URL¤È¤«¤¢¤¿¤ê¤«¤é»ý¤Ã¤Æ¤¯¤ë¤Ê¤é¤Ð¡¢¤½¤ì¤Û¤ÉÌäÂê¤Ë¤Ê¤é¤Ê¤¤¤È»×¤¦¤±¤É¡¢¤¢¤ëÆÃÄê¤Î¿Í¤Î¥Ç¡¼¥¿¤ò¾¡¼ê¤Ë¾¤Î¥µ¡¼¥Ó¥¹¤Ç¼è¤ê¹þ¤ó¤Ç¡¢²Ã¹©¤·¤Æ¡Ê¾¤Î¿Í¤Î¥Ç¡¼¥¿¤Èº®¤¼¤Æ¡Ë»È¤¦¤Î¤Ï¡¢°ìÈÌŪ¤Ê¸ø³«¥µ¡¼¥Ó¥¹¤Î·Á¼°¤Ç¤ä¤ë¤Î¤Ï¤Á¤ç¤Ã¤È¥ê¥¹¥¡¼¡£
URL¤Î¤ß¤òήÍѤ¹¤ë¤Ê¤é¤Þ¤ÀÂç¾æÉפ«¤â¤·¤ì¤Ê¤¤¤±¤É¡¢Î®Íѥǡ¼¥¿¤Ë¥³¥á¥ó¥ÈÉôʬ¤¬´Þ¤Þ¤ì¤ë¤È¡¢¥Ç¡¼¥¿¤ÎÃøºîʪÀ¤¬¹â¤Þ¤Ã¤Æ¡¢Î®ÍѤ¹¤ë¤³¤È¤Ë¥¯¥ì¡¼¥à¤ò¤Ä¤±¤ë¿Í¤¬½Ð¤Æ¤¯¤ë¤È»×¤¦¡£Planet¡Á·Ï¤È¤«¤Ç¥¯¥ì¡¼¥à¤¬ÉÕ¤¤¤¿¤ê¤·¤Æ¤¤¤ë»öÎã¤ò¸«¤ë¤È¡¢¤½¤Î¼ê¤Îµ¡Ç½¤òï¤Ç¤âÅÐÏ¿¤Ç¤¤ë°ìÈÌ¥µ¡¼¥Ó¥¹²½¤·¤¿¤é±¿±Ä´ÉÍý¤¬ÌÌÅݤ¯¤µ¤½¤¦¡£
¤È¤¤¤¦¤ï¤±¤Ç¡¢MM¤Ç¤½¤Î¼ê¤Îµ¡Ç½¤òºÜ¤»¤Ê¤¤¤Î¤Ï¡¢µ¡Ç½Åª¤Ë¤ÏÊØÍø¤½¤¦¤À¤±¤É±¿±Ä´ÉÍý¥³¥¹¥È¤¬¤«¤«¤ê¤½¤¦¤Ê¤ó¤Ç¤½¤Î¥ê¥¹¥¯¤ò¼è¤ì¤Ê¤¤¤«¤é¡¢¤À¤Ã¤¿¤ê¤¹¤ë¡£Alpha Geek Tracker¤ß¤¿¤¤¤Ë¸Ä¿ÍŪ¤Ë¡Êï¤âÅÐÏ¿¤Ç¤¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤·Á¤Ç¡Ë¤ä¤ëʬ¤Ë¤ÏÂç¾æÉפÀ¤È»×¤¦¤±¤É¡£
2005-04-25 [ĹǯÆüµ]
_ tDiary¤Î¥¢¥ó¥«¡¼¥ê¥ó¥¯»þ¤Ë¥É¥¥å¥á¥ó¥È¥¿¥¤¥È¥ë¤òɽ¼¨¤¹¤ë ¤½¤Î5 (04:14)
·èÄêÈǤȤ«¸À¤Ã¤Æ¤ª¤¤Ê¤¬¤é¡¢¤Þ¤À¤¤¤¸¤Ã¤Æ¤¤¤ë¡£¥»¥¯¥·¥ç¥ó¥¢¥ó¥«¡¼¤Îʸ»úÎóŤò¡¢¤Á¤ã¤ó¤È@conf¤«¤é»ý¤Ã¤Æ¤¯¤ë¤è¤¦¤Ë¤·¤¿¡£¤³¤ì¤ÇÛ£Ëæ¤ÊÉôʬ¤¬¤Ê¤¯¤Ê¤Ã¤¿¤ó¤¸¤ã¤Ê¤¤¤Ç¤·¤ç¤¦¤«¡£
23,29d22
<
< if (highlightElem.tagName == 'H3') {
< var diary_title = "#{@conf.html_title.gsub(/"/, '\\"')} (#{@date.strftime('%Y-%m-%d')})";
< var sanchor_length = #{@conf.section_anchor.gsub(/<[^>]+?>/, '').length};
< var section_title = highlightElem.innerHTML.replace(/<[^>]+?>/g, '').substr(sanchor_length);
< document.title = section_title + ' - ' + diary_title;
< }
2005-04-26 [ĹǯÆüµ]
_ dotproject¤ò»î¤·¤Æ¤ß¤è¤¦¤È»×¤Ã¤¿¤±¤É (15:09)
ºÇ¶á¤¢¤Á¤é¤³¤Á¤é¤Ç̾Á°¤ò¸«¤«¤±¤¿dotproject¤ò»î¤·¤ËÆþ¤ì¤Æ¤ß¤¿¤ó¤À¤±¤É¡¢Ç§¾Ú¼þ¤ê¤¬¤ª¤«¤·¤¤¤Ê¡¼¡£¥¢¥«¥¦¥ó¥È¾ðÊó¤ò¤¤¤¸¤ë¤È¡¢¥í¥°¥¤¥ó¤Ç¤¤Ê¤¯¤Ê¤ë¡£Äɤ¤¤«¤±¤Æ¤¤¤Ã¤¿¤È¤³¤í¡¢GACL¤È¤«¤¤¤¦Ç§¾Ú¥é¥¤¥Ö¥é¥ê¡Ê¡©¡Ë¤¬¸¢¸Â¥Á¥§¥Ã¥¯¤Ç¤Ï¤Í¤Æ¤¤¤ë¤é¤·¤¤¤±¤É¡¢³°Éô¥é¥¤¥Ö¥é¥ê¤È¤ÎÏ¢·È¤Þ¤ÇÄɤ¤¤«¤±¤ëµ¤¤Ë¤Ê¤ì¤Ê¤¤¤·¤Ê¡¼¡£¤È¤¤¤¦¤«¡¢GACL¤Ã¤Æ½é¤á¤ÆÃΤ俤ʡ£¤³¤ì¤Ã¤Æ»È¤¨¤ë¤Î¤«¤Ê¡©
¤È¤¤¤¦¤«¤½¤â¤½¤â¡¢¥¤¥ó¥¹¥È¡¼¥ë¤ÎÃʳ¬¤«¤é¤¤¤í¤¤¤í¤¦¤Þ¤¯¹Ô¤«¤Ê¤¤¤È¤³¤í¤¬Â¿¤«¤Ã¤¿¡£DB½é´ü²½¤Ç¥¤¥ó¥¹¥È¡¼¥é¤Ïsuccess¤È¤¤¤Ã¤Æ¤ë¤Î¤Ë¡¢¤¤¤¯¤Ä¤«¤Î¥Æ¡¼¥Ö¥ë¡Êprojects¤È¤«¡Ë¤¬¤¦¤Þ¤¯ºî¤é¤ì¤Ê¤¯¤Ã¤Æ¡¢²¿²ó¤«Á´ºï½ü¤«¤é¤ä¤êľ¤·¤¿¤ê¤È¤«¡£¤Þ¤À°ÂÄꤷ¤Æ¤Ê¤¤¤Î¤«¤Ê¡¼¡£¤³¤ì¤Á¤ã¤ó¤È»È¤Ã¤Æ¤¤¤ë¿Í¤¤¤ë¤Î¡©
_ ½ÅÊ£¤¹¤ë¥¿¥°É½¼¨API (20:02)
¡Ö¥¿¥°¤ÎÆüËܸìÍɤ餮¤ò¥í¥¸¥Ã¥¯¤ÇµÛ¼ý¤¹¤ë¡×¤Ëtrackback¤ò¤â¤é¤Ã¤¿¤ó¤À¤±¤É¡¢¤¤¤Þ¤¤¤Á¤½¤Ã¤ÁÊýÌ̤ËǾ¤ß¤½¤¬Æ¯¤«¤Ê¤¤¤ó¤Ç¡¢¶ñÂÎŪ¤Ê¹Ôư¤Ë½Ð¤é¤ì¤Ê¤¤¤Ç¤¤¤¿¡£
¤Ç¡¢¤¤¤Ä¤Þ¤Ç·Ð¤Ã¤Æ¤âǾ¤ß¤½¤¬Æ¯¤«¤Ê¤¤¤Ã¤Ý¤¤¤ó¤Ç¡¢¤Ò¤È¤Þ¤ºÃ¯¤«Âå¤ï¤ê¤ËǾ¤ß¤½¤òƯ¤«¤»¤Æ¤¯¤ì¤ë¿Í¤¬¤¤¤Ê¤¤¤«¤Ê¡¼¡¢¤È¤¤¤¦¤³¤È¤Ç¡¢Ã±½ã¤ÊAPI¤òÍѰդ·¤Æ¤ß¤¿¡£
http://1470.net/api/similar_genres.php?genre=[MM¤Î¥¸¥ã¥ó¥ë]
¤ò᤯¤È¡¢EUC-JP¤Ç¤½¤Î¥¿¥°¤È½ÅÊ£¤·¤Æ»È¤ï¤ì¤Æ¤¤¤ë¥¸¥ã¥ó¥ë¤ò¡¢
[¥¸¥ã¥ó¥ëʸ»úÎó]\t[½ÅÊ£¿ô]
¤È¤¤¤¦TSV·Á¼°¡ÊEUC-JP¡Ë¤Ç½ÐÎϤ¹¤ë¡£¤¿¤È¤¨¤Ð¡ÖAjax¤È½ÅÊ£¤¹¤ë¥¿¥°¡×¤È¤«¡£»×¤¤¤Ä¤¯±þÍÑÎã¤È¤·¤Æ¤Ï¡¢¡ÖAjax¤Ç¾åµ¤òÆÉ¤ß¹þ¤ó¤Ç¡¢Îà»÷¥¿¥°¤Ø¤Î¥Ê¥Ó¥²¡¼¥È¤ò¹Ô¤Ã¤¿¤ê¡×¤È¤«¤«¤Ê¡¼¡£²¿¤«¤¤¤¤»È¤¤Æ»¤¬»×¤¤¤Ä¤¯¿Í¡¢»È¤Ã¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£



Before...
_ ishinao [¤¦¤¬¡¢´Î¿´¤Î¤È¤³¤í¤ò½¤Àµ¤·Ëº¤ì¤Æ¤¤¤¿¤È¤Ï¡£¤³¤½¤Ã¤È½¤Àµ¡£ ¤¢¤ê¤¬¤È¤¦¤´¤¶¤¤¤Þ¤¹¡äËÜ ¤È¤³¤í¤Ç¥Þ¥¤¥¯¥í¥½¥Õ¥È¤Ã¤Æ¡©¡©..]
_ ¤¿¤À¤¿¤À¤· [¥Û¥ó¥È¤ËUTF-8¤Ë¤Ê¤Ã¤Æ¤ë¤·(¾Ð)]
_ ishinao [¤¿¤Ã¤¿13¹Ô¤ÇtDiary¤Îµ¡Ç½¤ò¼Â¸½¡ª¡¡¤·¤«¤âtDiary¼¡´ü¥Ð¡¼¥¸¥ç¥ó¤Îµ¡Ç½¤òÀè¼è¤ê¡ª¡¡¤È¤¤¤¦¤³¤È¤Ç¤è¤í¤·¤¯¤ª´ê..]