AJAX
October 31st, 2007
เพิ่งจะได้มีเวลามานั่งลองเล่น AJAX หรือ Asynchronous JavaScript and XML โดย concept แล้วง่ายดีไม่ได้ซับซ้อนอะไร แต่เอาไปทำอะไรได้เยอะมาก หลักๆก็คือการที่สามารถใช้ JavaScript ติดต่อกับ server-side ให้ทำอะไรก็ได้เช่น query database แล้วรับข้อมูลเอามาใช้โดยไม่ต้อง reload page นั้นใหม่ โดยข้อมูลที่ได้มาก็เอาไปเปลี่ยนหรือเอาไปแสดงเพิ่มบนหน้าที่แสดงอยู่แล้วโดยการ refer ถึง element ที่ต้องการเปลี่ยนด้วย id
key component ที่เพิ่มมาก็คือ XMLHttpRequest object ซึ่งต้องสร้างขึ้นมาโดย(ในกรณี firefox)
xmlHttp=new XMLHttpRequest();
และ XMLHttpRequest object ที่สร้างขึ้นมานี้ก็จะมี property หลักๆ 3 อันด้วยกันที่นำมาใช้คือ .onreadystatechange ซึ่งจะต้อง set ให้เท่ากับ function ที่จะ run เมื่อได้รับ response จาก server กลับมาโดย function ที่ set นี้ก็จะ run ทุกครั้งที่มีการเปลี่ยน readyState ส่วน property อันที่สองก็คือ readyState นั่นเองซึ่งจะมีอยู่ 5 state ด้วยกัน
0=not initialized
1=set up
2=sent
3=in process
4=complete
ดังนั้นส่วนใหญ่ function ใน onreadystatechange เราก็ต้อง check ว่า readyState เป็น complete หรือยังก่อนที่จะเอาข้อมูลไปใช้ property อันที่สามก็คือ responseText ซึ่งจะเท่ากับ response ที่ส่งกลับมาจาก server ตัวอย่าง code ข้างล่างน่าจะทำให้ชัดเจนขึ้น
function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState==”complete”)
{
document.getElementById(“txtHint”).innerHTML=xmlHttp.responseText
}
}
ส่วน method ในการส่ง request ไปที่ server ก็คือ open กับ send โดย open ก็จะมี parameter คือ GET/POST, url ที่จะเรียกไปที่ server และ “true” เพื่อให้ handle แบบ asynchronous
xmlHttp.open(“GET”,url,true)
xmlHttp.send(null)
Firefox Cache
September 23rd, 2007
เพื่อจะ download พวก flash movie หรือ images จาก firefox cache ต้องทำตามข้อมูลข้างล่าง
The location for cached Firefox web elements is under the \Documents and Settings\[username]\Local Settings\Application Data\Mozilla\Firefox\Profiles\[profilename]\Cache directory in XP. However the files held there are saved as a range of alphanumeric strings and not as filenames. This is primarily for security purposes, so that a malicious file/script in your cache can’t be launched easily. To view the cache contents, type “about:cache?device=disk” (without quotes) in the Firefox address bar and press Enter – all the cached entries will be shown as links, with further details when you click on each link.
Get Login Page in Drupal
September 10th, 2007
ผมไปลองตั้งให้ User Login module ใน Drupal เห็นเฉพาะ authenticate user ทีนี้พอ logout ออกมาแล้วก็จะหาทาง login ไม่เจอจะเข้าไปเปลี่ยนอะไรอีกทีก็ไม่ได้ วิธีเอาหน้า login เข้ามาก็คือไปที่ ?q=user ดูง่ายๆแต่บางทีก็ลืมหรือนึกไม่ถึงเหมือนกัน ที่ต้อง disable login ก็เพราะ site ที่ทำอยู่ยังไม่จำเป็นต้องเปิดรับ user และยังมีปัญหานิดหน่อยกับ IE เรื่อง frameset ด้วย
Setting Up Cron Using Poormanscron
September 9th, 2007
ลองพยายาม set crontab ในสองสาม hosting ที่ใช้ทั้ง DirectAdmin และ Plesk แต่ไม่ work ทั้งแบบใช้ cron-curl.sh ของ drupal และ ใช้ /usr/bin/php /home/user/public_html/…/cron.php สุดท้ายก็มาใช้ poormanscron อย่างที่หลายๆคนแนะนำ ผมว่าดีกว่าอีกไม่ยุ่งดี และทุกอย่างอยู่ใน control ของเรา download ที่นี่ ครับ
OpenDNS
September 7th, 2007
เป็นบริการ DNS ฟรีที่ป้องกัน web site พวก phishing ให้รวมทั้งพวก Adult sites ด้วย เท่าที่เขาบอกอีกก็คือเขามี performance ที่ดีมาก reliable เพราะมี cache อยู่หลายที่ ผมลองใช้แล้วก็ ok อย่างน้อยก็ช่วยป้องกัน site พวก phishing/bad web sites ให้เราขั้นหนึ่ง ไปที่ opendns.com แล้วลองดูครับ DNS addresses เขาอยู่ที่
208.67.222.222
208.67.220.220
ถ้าสร้าง account กับเขาแล้วเราสามารถ customize ค่า blocking ต่างๆที่เราต้องการและสามารถสร้าง whitelist และ block domains ที่ต้องการได้ รวมทั้งค่าอื่นๆอีกหลายอย่าง
Upload Any File Types to Wordpress
August 13th, 2007
ลองพยายามหาที่ setting ว่าให้ upload file นามสกุลอื่นได้ใน wordpress แต่ไม่เจอ ไปเจอ plugin ตัวนี้ของ Peter Westwood ที่ Peter Westwood Blog
ใช้ได้ดีครับผมเอามาไว้ที่นี่ด้วย pjw-mime-config.zip โดยให้เปลี่ยนนามสกุลหลัง download เป็น .php นะครับ ส่วนตัวอย่างการ set mime type ดูได้จากไฟล์นี้ครับ mime.txt
Me.Dium Contextual IM
November 27th, 2006
ผมมาเจอ IM(Instant Messenger) concept ใหม่ซึ่งน่าสนใจไม่น้อยทีเดียว เป็น IM แบบที่เราสามารถเห็นได้ว่า Web Sites ที่เกี่ยวข้องกับ Web ที่เราเข้าอยู่มีคนเข้าอยู่มากน้อยแค่ไหน และสามารถ Chat คุยกับคนที่เข้า Web พวกนี้อยู่ได้ทันทีเพื่อเรื่องราวต่างๆ (อยู่ใน Context ใกล้เคียงกัน) ได้ทันที นอกจากนี้ยังสามารถรู้ได้ด้วยว่าคนที่เรา define ว่าเป็น Friends กำลังเข้า web อะไรอยู่ ทาง Me.Dium เค้าเปรียบไว้ว่าเหมือนเราเดินไปตามถนนเพื่อจะเลือกร้านอาหารกิน แล้วไปเจอสามร้าน ร้านหนึ่งคนแน่นคึกคัก ร้านหนึ่งไม่มีคนเลย อีกร้านหนึ่งมีแค่สองคนแต่เป็นเพื่อนของเรา คุณจะเลือกเข้าร้านไหน ประเด็นก็คือ คนหรือ community นั้นมีส่วนสำคัญอย่างมากในการตัดสินใจเรื่องต่างๆในชีวิตประจำวันของคนเรา ซึ่งทาง Me.Dium ก็พยายามเอา concept นี้เข้ามาใช้ในโลก online โดยในการใช้งานจะต้อง download ตัวโปรแกรม IM มาลงที่เครื่องและก็สร้างเครือข่ายของเพื่อนให้มากๆนั่นแหละครับถึงจะเห็นภาพจริงๆ
ผมนับถือในความคิดใหม่ๆนี้มาก สองเรื่องที่ผมคิดขึ้นมาทันทีก็คือ ผมไม่แน่ใจว่าส่วนใหญ่เราต้องการให้คนอื่นรู้มากแค่ไหนว่าเราเข้า Web อะไรอยู่แม้จะเป็นในกลุ่มเพื่อนก็ตาม บางช่วงก็อาจจะ OK แต่บางช่วงเราก็อาจไม่ต้องการเปิดเผยและต้องการความเป็นส่วนตัว เส้นแบ่งตรงนี้จะเปลี่ยนมาเป็นความยากง่ายในการใช้งานได้ดีแค่ไหน คงต้องลองดูกัน อีกเรื่องหนึ่งก็คือ ผมว่าคงมีอีกหลายความคิด ที่พยายามเอาความเป็น community ในชีวิตจริงมา adapt เข้ากับโลก online ซึ่งวันหนึ่งน่าจะต้องเจออะไรที่ click แน่นอน
ถ้าใครต้องการ invite ก็ leave email ไว้ได้ครับเดี๋ยวส่งไปให้
FeedDemon versus Bloglines
November 27th, 2006
ผมใช้ Bloglines มาตลอดและก็ค่อนข้างพอใจโดยรวม มีอยู่อย่างเดียวที่ไม่ค่อยชอบก็คือเวลาเปิดแต่ละ feed แล้วมันจะ set news items ทั้งหมดว่าเป็น read คืออ่านแล้วและพอเข้ามาอีกทีก็จะไม่เห็นแล้ว แม้ว่าจะเลือก Keep New แต่ละอันได้ แต่สำหรับบางทีที่ผมแค่เข้ามาดูว่ามีหัวข้อคร่าวๆอะไรบ้างยังไม่ต้องการอ่านจริงๆ การที่จะต้องมานั่ง tick Keep New ทีละอันก็ไม่ไหวเหมือนกัน เคยลอง Mark All New แต่รู้สึกว่าจะทำได้ครั้งเดียวนะครับ
ได้ยินชื่อ FeedDemon มานาน เสาร์อาิทิตย์นี้เลยลองใช้ดู ก็ไม่เลวเหมือนกัน sync. กับ Bloglines ได้ แต่ผมไม่ค่อยชอบให้ sync. เท่าไรเพราะมีหลักการทำงานอันหนึ่งที่แตกต่างและค่อนข้างสำคัญดังนี้ ใน Bloglines นั้นถ้าเรา set item ไหนให้เป็น Keep New มันก็จะอยู่ใน Bloglines ตลอดไป ผมเข้าใจว่าคงจะมี Limit ว่าไม่ให้เกินกี่ items แต่ผมคิดว่ามันเยอะเกินพอ ส่วน feeds ที่เข้ามาใหม่จะรับได้ไม่เกิน 200 ให้สังเกตว่าแยกกันนะครับ ระหว่าง item ที่ต้องการจะเก็บโดยการ Keep New ไว้ กับ feed ใหม่ที่รับเข้ามา
แต่ในส่วนของ FeedDemon นั้น ถึงแม้ว่าเราจะ tick item ไหนว่าอ่านแล้วมันก็จะยังถูกเก็บอยู่ และทั้ง feed items ใหม่ที่เข้ามาและอันเก่าที่มีอยู่ทั้งที่อ่านแล้วและยังไม่อ่าน จะถูกนับรวมกันและเก็บไว้แค่ตามจำนวนที่ set ใน Archive ใน Feed Properties เท่านั้น (Default = 200) ดังนั้นถ้านับรวมกันแล้วเกิน 200 items เก่าๆก็จะถูกตัดออกไปทันที ถ้าจะเปรียบไปก็คล้ายๆกับอยู่ในลักษณะของ Sliding Windows ที่เลื่อนไปสู่ feed items ที่ใหม่ขึ้นเรื่อยๆโดยมีขนาดของ Windows คงที่? วิธีที่จะเก็บ item ที่เราต้องการก็ทำได้โดยเก็บไว้ใน Newsbin ซึ่งจะไปคล้ายกับการ tick Keep New ในส่วนของ Bloglines ครับ
Rapidshare Search
November 14th, 2006
ถ้ามีแบบ search ใน rapidshare ก็ดีสิ ที่มีข้างล่างก็ดูจะไม่ค่อยจะ work เท่าไร
http://www.rapidshared.info/index.php
http://rapidfox.net/
http://rapidshared.org/
http://www.megauploaded.org/
Favorite Fonts from f0nt.com
November 14th, 2006
มี fonts สวยๆเยอะแยะเลยที่นี่ อันที่ไล่ดูแล้วชอบคือ
iannnnBK
dY
toxin
peach
fromHome
RSS
