theme สวยมาก แต่มี license ของ solostream.com

wordpress theme
wordpress theme

6 มี.ค.53 วันนี้พบเว็บไซต์หนึ่งใช้ theme สวยมาก ชื่อ wp-clear บน wordpress.com พัฒนาโดย Solostream มีรายละเอียดใน solostream.com ส่วนเว็บบอร์ดของไทยที่ให้ข้อมูลเรื่องนี้พบใน thaiseoboard.com ส่วนเว็บไซต์ของไทยที่ใช้ theme นี้ได้อย่างลงตัว คือ startupthailand.com ตอนแรกก็คิดจะ download มาทดสอบติดตั้งในเครื่องที่บ้านและเผยแพร่ต่อไป แต่เข้าไปอ่านรายละเอียดก็พบว่ามี license คือ The SOFTWARE is protected by copyright laws and international treaty provisions. จึงไม่ดำเนินการอะไรต่อครับ พบว่าราคามี 3 แบบคือ แบบใช้เว็บไซต์เดียวราคาราว 2,400 บาท แบบหลายเว็บไซต์ราคาราว 5,400 บาท แบบสำหรับผู้พัฒนาที่ไปขายให้ลูกค้าอีกต่อได้ราคาราว 8,400 บาท ถ้าผมจะหา free theme ที่นำมาใช้และไม่ผิดกฎหมายคงต้องกลับไปหาใน wordpress.org ใช้เวลาสักพักก็พบว่า themes ชื่อ news-magazine-theme-640 เป็นอะไรที่น่าสนใจมากครับ .. ถ้าใช้ก็ต้องศึกษาเรื่อง seo ไปพร้อมกัน
+ http://wordpress.org/extend/themes/news-magazine-theme-640http://www.thaiseoboard.com/index.php?topic=100797http://www.solostream.com/wordpress-themes/
http://yonok.startupthailand.com
+ http://wordpress.org/extend/themes/

ปรับแว็บไซต์ (wap site) และเพิ่มข้อสอบ

ข้อสอบใน wap site

20 ก.พ.53 ตรวจสถิติจากไซต์ของผู้ให้บริการโฮส พบว่า เว็บเพจโปรแกรมข้อสอบผ่าน wap ถูกใช้บริการมีปริมาณการเข้าใช้สูงมากในเดือนมกราคม 2553 เป็นเว็บเพจที่ไม่มีระบบสถิติใด ๆ วางไว้ เพราะต้องการให้เข้าถึงด้วยโทรศัพท์เคลื่อนที่อย่างรวดเร็ว ครั้งแรกที่ออกแบบโปรแกรมนั้นมีความตั้งใจให้ลูกได้เข้าไปเรียนรู้เกี่ยวกับคำศัพท์อย่างง่ายเท่านั้น
     การปรับปรุงโปรแกรมในชุดแว็บไซต์ มีดังนี้ 1) ให้ลูกช่วยพิมพ์ศัพท์ 5 ตัวอักษรร้อยกว่าตัว เป็นข้อสอบร้อยกว่าข้อ 2) ตรวจข้อสอบศัพท์ 4 ตัวอักษรแล้วเพิ่มเป็น 316 ข้อ 3) ปรับโปรแกรมทั้งหมดเข้ามาตรฐาน xml ให้ใช้ได้กับ wapsilon.com ถ้ามีโอกาสก็จะเข้าไปเพิ่มศัพท์ 6 ตัวอักษร และ 7 ตัวอักษรต่อไป
+ http://www.thaiall.com/wap
+ http://www.wapsilon.com
+ http://tagtag.com/site/emulator
+ http://www.mobilerunner.net/emu_wap3/p/wap3/

แปลงเลขอารบิกเป็นเลขไทย

การแปลงเลขอารบิกเป็นเลขไทยด้วย macro

10 ก.พ.53 เรื่องนี้ควรเขียนเมื่อหลายเดือนก่อนหน้านี้ เพราะ ผศ.ดร.จินดา งามสุทธิ ท่านอธิการบดี รณรงค์ให้ใช้เลขไทยในบันทึกข้อความ แต่ความไม่ชินและความมักง่าย ทำให้ผมเลือกใช้วิธีแปลงเลขอารบิกด้วยการ replace ถึง 10 ครั้ง เพื่อเปลี่ยนตัวเลขทีละตัว แต่ถ้าให้อัตโนมัติก็จะเข้าไปกำหนดใน autocorrect สำหรับแต่ละตัวเลข แต่ใช้ได้กับเลขหลักเดียว ก็ช่วยได้เพียงระดับหนึ่ง (วันนี้ผมเคลียร์งานเขียนแผน km ของมหาวิทยาลัยล้อกับโครงการอบรมประกันฯของ อ.ศศิวิมล แรงสิงห์ เสร็จเร็วกว่าที่คาด) จึงคิดว่าถึงเวลาที่ไม่ควรผลัดวันประกันพรุ่งอีกต่อไป เมื่อศึกษาวิธีการแทนที่ตัวเลขด้วย macro ที่เขียนแบบใช้ใน word กับ excel เผยแพร่ใน thaiall.com/vb เพราะ macro ใช้ visual basic script ใน module สำหรับการประมวลผล
แหล่งเก็บ macro มี 2 แบบคือ ใน normal หรือ ใน document ถ้าเป็นแบบใน document เมื่อสร้างเอกสารก็จะติดเอกสารไป เปิดเอกสารใหม่จะไม่พบ macro เดิม แต่ถ้าเป็นแบบใน normal จะมี macro ติดอยู่ใน template ของ word ทำให้เปิด word แล้วเรียกใช้ macro ได้ทุกครั้ง สำหรับวิธีสร้างและใช้ macro นั้นเริ่มต้นด้วยการคัดลอกโค้ดไปใส่ใน module ของ macro แล้วสั่ง run ใน macro เมื่อต้องการเปลี่ยนตัวเลขทั้งหมดเป็นเลขไทย ซึ่งโค้ดได้สั่งแทนที่ทั้ง 10 ตัวอักษรเป็นเลขไทยอัตโนมัติ การนำไปใช้สำหรับ word กับ excel ต่างกันเล็กน้อย ถ้านำไปใส่ไม่ได้ โปรดติดต่อช่างเทคนิคใกล้บ้าน เพราะส่งเข้า word ครั้งเดียว แต่ใช้งานได้ตลอดไป .. ต่อไปผมก็จะเริ่มใช้แล้ว เพราะ replace 10 ครั้ง ไม่ดีแน่

source code : macro of word

Sub arabictothai()
For i = 0 To 9
With Selection.Find
.Text = Chr(48 + i)
.Replacement.Text = Chr(240 + i)
.Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
Next
End Sub

source code : macro of excel

Sub arabictothai()
For i = 0 To 9
Cells.Replace What:=Chr(48 + i), Replacement:=Chr(240 + i)
Next
End Sub

การแปลงเลขใน excel

1. ถ้าเป็น excel ไม่ต้องใช้ function ให้กด Ctrl-A แล้วกำหนด format ของ cell ใน Number,  Custom เป็น [$-D07041E]0 ก็จะทำให้ข้อมูลที่เป็นตัวเลขทั้งหมดเป็นเลขไทย
2. ถ้าต้องการมี , กั้นหลักพันก็ใช้ [$-D07041E]#,###,##0 อะไรทำนองนี้ ok ไหมครับ

สาธิต : http://www.youtube.com/watch?v=JNy15bLnt9k
ข้อมูลเพิ่มเติม : http://www.thaiall.com/blog/burin/1496/

สถิติเข้า wap ของผมเดือนธันวาคม52

สถิติทำให้เห็นรายการที่ผู้ใช้เข้าถึงระบบ wap

4 ก.พ.53 สถิติการเข้าเว็บไซต์มีอยู่หลายระบบ แต่ที่บริการโดยผู้ให้บริการเช่าเครื่องมีความละเอียดสูงมาก จากการตรวจสอบในปลายเดือนธันวาคม52 พบว่า thaiall.com/wap มี hits ของเว็บเพจสอบศัพท์อย่างง่ายสูงมาก เป็นศัพท์ 4 คำถึง 2หมื่นกว่า และศัพท์ 3 คำอีกหมื่นกว่าจาก 9383 แฟ้ม วันนี้จึงเข้าไปปรับให้ศัพท์ 4 คำมีความถูกต้อง และเพิ่มศัพท์อีกร้อยหนึ่ง รวมเป็นศัพท์ในข้อสอบสุ่มชุดนี้ประมาณสามร้อยกว่าคำ แต่ผมไม่ได้ใส่ adsense หรือ truehits เพราะต้องการให้ load ได้เร็วแม้จากโทรศัพท์เคลื่อนที่และ code ถูกออกแบบให้เปิดได้ทั้ง web browser และ wap browser
+ http://tagtag.com wap browser simulator

กรมคำสั่ง application.openforms

mdiparent กับ 2 form

28 ม.ค.53 ปกติผมไม่เขียนเรื่องเทคนิคการโปรแกรมใน blog เพราะมีรายละเอียดมาก และเขียนไว้ในเว็บเพจอยู่แล้ว แต่หัวหน้าแนะว่าอยากให้ เขียนเรื่อง application.openforms ซึ่งเป็นวิธีการส่งค่าระหว่างฟอร์มลูกใน mdiparent ซึ่งผมเคยเขียนไว้ในเว็บเพจว่าใช้วิธีอ้างผ่าน mdiparent แต่ทั้ง 2 วิธีที่จะนำเสนอนี้มีความแต่ต่างกันชัดเจน ซึ่งผมจะเขียนเรื่องนี้ไว้ใน
+ http://www.thaiall.com/vbnet/testtoolbox.htm
ขั้นตอนที่ 1 การสร้างคอนโทล เพื่อเตรียมความพร้อม
    
สร้าง mdi parent form และ windows form ขึ้น 2 form เมื่อเปิด solution ให้เรียกทั้ง 2 ฟอร์มมาแสดงใน mdi parent form ทันที โดยใส่คำสั่งในโหลดของเอ็มดีไอ คือ dim f1 = new form1 : f1.mdiparent = me : f1.show() : dim f2 = new form2 : f2.mdiparent = me : f2.show() แล้วในฟอร์มทั้งสองมี ปุ่มและเท็คบ็อกอย่างละหนึ่ง
ขั้นตอนที่ 2 ทดสอบคำสั่งที่ใช้ส่งค่าเมื่อกดปุ่ม
    กรณีที่ 1 กรอกข้อมูลและสั่งจากฟอร์มหนึ่งแต่มีผลในฟอร์มสอง ใส่คำสั่งในปุ่มของฟอร์มหนึ่งว่า For Each f As Object In MDIParent1.MdiChildren : If UCase(f.name) = “FORM2” Then : Dim f2 As Form2 = f : f2.TextBox1.Text = Me.TextBox1.Text : MsgBox(“wait”) : f2.Close() : End If : Next
    กรณีที่ 2 ทดสอบตามที่หัวหน้าแนะนำให้ใช้ application.openforms โดยสั่งจากฟอร์มสองแต่มีผลในฟอร์มหนึ่ง โดยใส่คำสั่งในปุ่มของฟอร์มสองว่า Dim f As Form : f = Application.OpenForms.Item(“form1”) : For Each i As Object In f.Controls : If UCase(i.name) = “TEXTBOX1” Then : i.text = “abc” : End If : Next : MsgBox(“wait”) : f.Close()
ขั้นตอนที่ 3 อธิบายความแตกต่าง
     ทั้ง 2 กรณีต่างกันที่ กรณีที่ 1 อ้างอิงฟอร์มเป้าหมายผ่าน mdiparent1 แล้ววนลูปตาม object ทั้งหมดในนั้น โดยมองหาวัตถุที่ชื่อ FORM2 เมื่อพบก็จะส่งเข้าวัตถุชิ้นใหม่ให้อ้างอิง แล้วจึงเรียกใช้ textbox1 ตามวัตถุประสงค์ แต่กรณีที่ 2 อ้างอิงฟอร์มเป้าหมายผ่าน Application.Openforms ซึ่งเรารู้ว่า Form1 เปิดอยู่ แล้วก็วนลูปเข้าไปใน controls ทั้งหมด เมื่อพบ textbox1 ก็ดำเนินการทันที

เก็บ log ของผู้ใช้ระบบอินทราเน็ตไม่เข้า

สถิติ และข้อมูลผู้ใช้ล่าสุด

19 ม.ค.53 เมื่อ 2 วันก่อนคือวันอังคารที่ผ่านมา พบปัญหาว่า อ.อติชาต หาญชาญชัย เข้าสู่ระบบอินทราเน็ต (เป็นผู้ทดสอบที่ไม่ได้มาจากการรับบันทึกเชิญชวนบุคลากรของมหาวิทยาลัยให้เข้าทดสอบระบบ แต่มาจากการบอกต่อของบุคลากร) สิ่งที่พบคือไม่แสดงข้อมูลการเข้าใช้ในระบบเก็บ log และจำนวนผู้ใช้หยุดที่จำนวน 27 คนเท่านั้น จึงแจ้งไปยังคุณธรณินทร์ สุรินทร์ปันยศ ว่าเกิดอะไรขึ้น มีการปรับข้อมูลอะไรหรือไม่ เพราะข้อมูลล่าสุดเป็นของวันที่ 15 ม.ค.53 แล้วผมก็เห็นกับตาว่าท่านได้เข้าใช้ระบบเมื่อวานนี้ และผลลัพธ์ใน log ไม่ถูกปรับอย่างที่ควรจะเป็น เวลาผ่านไปประมาณ 2 ชั่วโมง ก็ได้ทราบว่าพบปัญหาจริง แต่ยังแก้ไขไม่สำเร็จ เพราะ code ทำงานในเครื่องจำลองที่ใช้เป็นฐานในการพัฒนานั้นทำงานอย่างถูกต้อง มีข้อสงสัยว่าระบบ mysql ในเครื่องหลักมีปัญหา .. ก็สงสัยว่าจริงหรือ
     เมื่อผมเข้าไปดู code ก็พบว่าปกติ แต่ insert record ใหม่ไม่เข้าเท่านั้น ไปตรวจจำนวนระเบียนพบว่ามี 127 ระเบียน และไม่มีการเพิ่มขึ้นอีก .. นึกไปนึกมา ก็นึกได้ว่า 127 คือครึ่งหนึ่งของ 256 ซึ่งเป็นเลขที่อาจเป็นข้อจำกัดของ data type ที่เก็บข้อมูล จึงเข้าไปดูโครงสร้างแฟ้มด้วย phpmyadmin ก็พบว่า autonumber กำหนดเป็น tinyint ซึ่งรับระหว่าง -128 – 127 เมื่อแก้ไขเป็น int แล้ว ก็เก็บข้อมูลของผู้ที่ login เข้าสู่ระบบได้ตามปกติ ถึงวันนี้มีผู้เข้าระบบไปแล้ว 33 คน สำหรับคณะวิทย์ฯ มีบุคลากรเข้าใช้งานไปแล้วร้อยละ 75 ซึ่งสูงที่สุดเมื่อเทียบในระดับคณะวิชาด้วยกัน

ส่งเมลด้วยฟังก์ชัน mail ของภาษา php

28 ธ.ค.52 เหตุเกิด เพราะมีนักพัฒนาท่านหนึ่งต้องการใช้บริการส่งอีเมลด้วย php ผ่านฟังก์ชัน mail กับเครื่องบริการเว็บเครื่องหนึ่ง แล้วส่งไม่ออก เนื่องจากผู้ดูแลไม่เปิดบริการ smtp ทิ้งไว้ เรามีเครื่องบริการส่งเมลอยู่หลายเครื่องที่ติดตั้งไว้ เมื่อเปิดบริการส่งเมลในเครื่องที่ต้องการใช้ขึ้นใหม่แล้ว กลับพบว่าส่งอีเมลไม่ได้ ทำให้ต้องหาสาเหตุและแก้ปัญหา แล้วผลการดำเนินการก็เกิดบทเรียนให้เรียนรู้ ซึ่งเครื่องบริการเว็บที่ทดสอบในครั้งนี้มี 4 เครื่อง เครื่องส่งอีเมลเดิมมี 3 เครื่อง แต่ละเครื่องแตกต่างกันในวิธีแก้ปัญหา ซึ่งดำเนินการร่วมกับคุณอนุชิต ยอดใจยา และคุณธรณินทร์ สุรินทร์ปันยศ
     เครื่องบริการเว็บที่ 1 ของคุณอนุชิต ยอดใจยา ทดสอบแล้วไม่พบปัญหา คือ ทำงานร่วมกับ smtp server ที่มหาวิทยาลัยใช้งานทั้ง 3 เครื่องได้ปกติ ได้แก่เครื่อง it, linux หรือ cat โดยเครื่องนี้ใช้ php 5.2.6 แก้ไข smtp ผ่าน ini_set ได้ทันที แต่เครื่องนี้มิใช่เป้าหมายที่นักพัฒนาท่านนั้นต้องการ เครื่องบริการเว็บที่ 2 เป็นเครื่องเป้าหมาย ที่ต้องการทำให้ส่งอีเมลให้ได้ เครื่องใช้ php 4.3.4 พบว่าวิธีแก้ปัญหาคือ กำหนด SMTP และ sendmail_from ใน php.ini ได้พยายามใช้ ini_set และ mail() ที่กำหนด from แล้ว แต่ก็แสดง error message ว่า connection ไม่สำเร็จ สรุปว่าแก้ไข php.ini แล้วก็ส่งออก ไม่ว่ากับเครื่องบริการส่งเครื่องใด เครื่องบริการเว็บเครื่องนี้ก็ส่งได้จากเดิมที่ส่งไม่ได้เลย
     เครื่องบริการเว็บที่ 3 แก้ไขเหมือนเครื่องที่ 2 หรือ 1 ก็ยังส่งอีเมลไม่ได้ เครื่องทำหน้าที่เป็นทั้งเครื่องบริการ ส่งและเครื่องบริการเว็บในตัวเอง ส่วนซอฟท์แวร์ก็เหมือนกับเครื่องที่ 1 และถูกใช้มาโดยตลอด พบว่าวิธี แก้ปัญหาคือ กำหนด SMTP ใน php.ini จาก localhost เป็น ip address ของตนเอง ก็คาดว่าการใช้ localhost ไม่ได้เกิดจากการ config เครื่องบริการส่งเมลเป็นเหตุ แต่ตอนนี้ใช้ได้แล้วก็ไม่คิดจะเข้าไปแก้ไขอีก เครื่องบริการเว็บที่ 4 เป็นของคุณธรณินทร์ สุรินทร์ปันยศ ใช้บทเรียนที่ผ่านมาแก้ไขก็ยังไม่สำเร็จ พบ error ว่า connection กับ smtp server ไม่สำเร็จ  พบว่าวิธีแก้ปัญหาคือ ปิดบริการ Antivirus ของ Mcafee ซึ่งมี firewall ในตัว ก็ใช้ได้ปกติในทันที
+ SMTP = localhost
+ sendmail_from = a@a.com
+ mail(“x@x.com”,”hello”,”this is my test”,”From: y@y.com\nReply-To: z@z.com“);
+ ini_set(“SMTP”,”11.22.33.44″ );
+ ini_set(‘sendmail_from’, ‘b@b.com’);

ระบบปฏิทินกิจกรรมแบบได้นก 2 ตัว

ปฎิทินที่ใช้งานใน มูเดิ้ล
ปฎิทินที่ใช้งานใน มูเดิ้ล

24 ธ.ค.52 ระบบปฏิทินกิจกรรมที่ใช้ร่วมกันทั้งองค์กรก็เป็นแบบหนึ่ง คือ ทุกคน 1 ระบบ แต่แบบอื่นก็มี เช่น 1 คน 1 ระบบ หรือ 1 หน่วยงาน 1 ระบบ หรือ 1 คนหลายระบบ หรือ 1 หน่วยงานหลายระบบ คนในสำนักไอทีเคยใช้แบบ 1 คนหลายระบบมาแล้ว พบว่าปัญหาคือใช้กันคนละแบบจะดูของใครก็ต้องเปลี่ยนระบบให้ตรงกับคนนั้น อย่างบริการของ gmail.com hotmail.com yahoo.com หรือ yonok.ac.th แล้วก็ล้มไปในที่สุด คุณธรณินทร์ สุรินทร์ปันยศ คุณอรรถชัย เตชะสาย หรือคุณอนุชิต ยอดใจยา ให้ข้อมูลได้ เพราะใช้งานแต่ละทีไม่รู้จะใช้ระบบใด มีกันอยู่หลายระบบ ก็เพราะขาดการรวมศูนย์ เหมือนจับปูใส่กระโด้ง
     ถ้าใครจะนำระบบปฏิทินกิจกรรมมาใช้ ก็ใช้ระบบนี้ได้เพราะมีมาแล้วหลายปี ขาดแต่ผู้ใช้ คือ http://class.yonok.ac.th ที่มีบริการให้อาจารย์สามารถเขียนกิจกรรมของเว็บไซต์ประกาศให้ทุกคน หรือนักศึกษาได้ทราบ หรือจะบันทึกกิจกรรมของตนเอง ไว้ดูคนเดียวก็สามารถทำได้ จากภาพจะเห็น 3 ส่วนคือ 1) เมื่อเข้าสู่ระบบและเข้าปฏิทินของมูเดิ้ลจะสร้างกิจกรรมใหม่ได้ 2) การสร้างกิจกรรมเลือกระหว่าง กิจกรรมของสมาชิก หรือกิจกรรมของเว็บไซต์ 3) ผลคือกิจกรรมของสมาชิก จะไม่แสดงผลเมื่อสมาชิกท่านอื่นเข้าสู่ระบบ แต่กิจกรรมของเว็บไซต์จะเห็นกันทุกคน ระบบนี้ใช้งานทั้งมหาวิทยาลัย เพราะเป็นเงื่อนไขในการจัดกิจกรรมที่เน้นผู้เรียนเป็นสำคัญ และสนับสนุนการเรียนการสอนด้วยสื่ออิเล็กทรอนิกส์ที่ทันสมัย จุดเด่นคือเร็วที่สุด

มองเว็บไซต์มหาวิทยาลัยในแต่ละรุ่นย้อนหลัง 3 ปี

แต่ละรุ่นของเว็บไซต์ในหลายปีที่ผ่านมา15 ธ.ค.52 วันนี้ทราบจาก อ.ศักดา ดีคำป้อ ว่ารูปแบบของเว็บไซต์มหาวิทยาลัยใหม่มีความชัดเจนแล้ว การเปลี่ยนแปลงย่อมนำมาซึ่งสิ่งที่ดีกว่า ทำให้ผมลองมองย้อนกลับไปในอดีตว่าเว็บไซต์ของมหาวิทยาลัยเคยมีหน้าตาเป็นอย่างไรบ้าง ก็พบว่า 3 – 4 ปีหลังมีรุ่นของเว็บไซต์ค่อนข้างหลากหลาย เพราะมีเว็บมาสเตอร์เปลี่ยนหลายรุ่น ทั้ง .พิมาย วงค์ทา คุณนุชจรีย์ นะนันวี และคุณธรณินทร์ สุรินทร์ปันยศ เป็นคนปัจจุบัน
     มองอดีต ไม่ขอกล่าวถึงรุ่นก่อนประวัติศาสตร์ เพราะหาข้อมูลไม่พบแล้ว 1) มายุคแรกในสมัยของ อ.พิมาย วงค์ทา การออกแบบเว็บไซต์ค่อนข้างเน้นที่ความเรียบง่าย ส่วนใหญ่เป็นแบบมาตรฐานคือ กว่า 800 * 600 แบ่ง 3 column เหมือนของ eduzones.com หรือ sanook.com ที่แบ่งเนื้อหาออกเป็น block แต่มี comment เข้ามาบ่อย ทำให้เว็บไซต์ต้องเปลี่ยนรูปแบบหลายครั้ง ช่วงหนึ่งใช้แบบของเว็บไซต์แบบธุรกิจบัณฑิต 2) คุณนุชจรีย์ นะนันวี เข้ามาช่วงสั้น ๆ ในช่วงนี้เว็บไซต์ยังไม่ลงตัวนัก เพราะผู้ให้ข้อเสนอแนะมีจำนวนมาก และไม่มีใครได้สิทธ์ขาดในการตัดสินใจ แต่ก็ยังมีเสียงบ่นว่าไม่สวยเช่นเคย 3) คุณธรณินทร์ สุรินทร์ปันยศ เริ่มใช้ action script เข้ามาควบคุมระบบเว็บเพจของคณะและหน่วยงาน แบบของเว็บไซต์ถูกดูแลโดยคณะกรรมการจัดทำสื่อและกำกับโดยท่านอธิการ มีการใช้ flash ประกอบเว็บไซต์มากขึ้น ทำให้การออกแบบมีเอกภาพมากที่สุดตั้งแต่เปิดมหาวิทยาลัยมา ส่วนเนื้อหาในเว็บของแต่ละคณะดูแลโดยเลขานุการคณะ ช่วงนี้ไม่ได้ยินเสียงคนในมหาวิทยาลัยบ่นเรื่องรูปแบบเว็บไซต์เท่าใดนัก และภาพกิจกรรมก็เปลี่ยนแปลงตลอดด้วยความทันสมัย ตั้งแต่เปลี่ยนท่านอธิการทีมพัฒนาเว็บไซต์ก็ยังไม่ได้เปลี่ยนแปลงโครงแบบเว็บไซต์เลย เพราะทางคณะกรรมการที่ดูแลเว็บไซต์ยังไม่ให้รูปแบบใหม่ที่สอดรับกับภาพลักษณ์องค์กรใหม่นั่นเอง

ปรับ captcha ของ phpbb3 สู้กับ sex bot script

ผลปรับ captcha
ผลปรับ captcha

7 ธ.ค.52 วันนี้เวลาประมาณ 07:21AM. ได้รับแจ้งจาก อ.วิเชพ ใจบุญ ว่ามีศิษย์เก่าแจ้งให้ทราบว่าเว็บบอร์ดถูก bot ยิงภาพโป๊เข้ามาในระบบเว็บบอร์ดของมหาวิทยาลัย เมื่อเวลาผ่านไปสักพักผมได้หารือกับคุณธรณินทร์ สุรินทร์ปันยศ พบว่า เว็บบอร์ดที่ถูกยิงใช้ script ของ phpbb รุ่น 3.0.1 เพื่อทบทวนกันแล้วพบทางเลือก 3 ทางคือ 1)upgrade script จากphpbb 3.01 เป็น 3.06 ซึ่งผมก็ไม่แน่ใจว่า script ใหม่ แต่นโยบายเก่าจะกัน bot ได้หรือไม่ 2)ปิดการ post ผ่าน user ที่ไม่ต้อง register ซึ่งปัจจุบันระบบเปิดให้คนทั่วไปที่ไม่ต้องสมัครสมาชิก สามารถ post ได้ รวมถึงผู้มีข้อเสนอแนะ นักเรียน หรือผู้ปกครองที่สนใจจะส่งข้อมูลเข้าสู่ระบบจะได้สะดวก โดยไม่จำเป็นต้องถูกบังคับให้แสดงตัวตน 3)เพิ่มลายน้ำ และปรับ captcha ทำให้ sex bot อ่านข้อความจากภาพได้ยากขึ้น
     สรุปว่าผมเลือกทางเลือกที่ 3 คือเพิ่มลายน้ำให้ถี่ขึ้นในระดับ 10 Pixel และแก้ script ของ captcha_gd.php 2 จุดคือ 1)ขยายภาพ captcha ทำให้ bot มาตรฐานไม่รู้จัก บรรทัดที่ 27 – 28 2)เพิ่มวงกลมไปหลายสิบวงหลอกให้ bot มองเป็นตัวอักษรในภาพ บรรทัด 122 – 124 ก็จะดูว่าพรุ่งนี้จะมี bot ยิงเข้ามาหรือไม่ ถ้ามีก็ต้องทบทวนทางเลือกกันใหม่
+ http://www.thaiall.com/omni/phpbb3_captcha_gd_php.txt