Magic table for trigger in SQL Server

ใน SQL Server ในการ insert ,Update and delete ข้อมูลต่างๆที่เกิดขึ้นจะถูกเก็บไว้ใน magic table อยู่ 2 table คือ inserted,deleted tables inserted table จะเก็บข้อมูล recordที่ถูกดำเนินการ และจะเก็บข้อมุลหลังจากการ Update เสร็จสิ้น Deleted table จะเก็บข้อมูล record ที่มีการลบไปล่าสุดและเก็บข้อมุลเก่าก่อนการ Update Record ไว้ ในการเขียน Trigger สำหรับ table ใน SQL Server สำหรับการ Insert,delete จะไม่มีปัญหาอะไรดึงข้อมูล มาตรวจสอบจาก 2 table นั้นโดยตรง แต่ถ้าเป็นการ Update ก็จะต้องเลือกให้ดีว่าจะเอาข้อมูลอะไร ก่อนหรือหลังการ Update มาเก็บเป็น log นะครับ ตัวอย่างครับ   CREATE TRIGGER [dbo].[LogTrigger] ON [dbo].[zzz] AFTER DELETE,UPDATE AS BEGIN SET NOCOUNT ON; if exists(select * from inserted)     begin               insert into log_OptFac               select *,GETDATE(),’U’ from deleted      end else      begin                insert into log_OptFac                select *,GETDATE(),’D’ from deleted      end END  

Read More »

HowTo: Windows 8 L2TP / IPsec VPN Setup Tutorial

เปิด Network and Sharing Center จาก Control panel คลิกที่ Set up a new connection or network คลิก Connect to a Workplace คลิก Use my Internet connection (VPN) ใส่ค่าต่างๆ ตามรูป คลิก Create แล้วมองที่ Taskbar ด้านล่างขวา คลิกที่รูปการเชื่อมต่อเครือข่าย เพื่อเรียกดูการเชื่อมต่อเครือข่ายต่างๆ จะพบว่ามี  vpn.psu.ac.th เพิ่มขึ้นมา ให้คลิกขวาที่ vpn.psu.ac.th หรือ เลือก View connection properties จะได้ดังรูป คลิกที่ Security ในช่อง Type of VPN เลือก Layer 2 Tunnelinig Protocol with IPsec (L2TP/IPsec) แล้วคลิก Advanced settings เลือก Use preshared key for authentication แล้วในช่อง Key: พิมพ์ว่า vpn key (อ่านว่า วี-พี-เอ็น-เว้นวรรค-คีย์) กด OK เลือก Allow these protocols แล้วคลิกเลือกทุกหัวข้อด้านล่าง ยกเว้น Automatically … แล้วคลิก OK คลิกที่รูปการเชื่อมต่อเครือข่าย เพื่อเรียกดูการเชื่อมต่อเครือข่าย คลิกที่ vpn.psu.ac.th คลิก Connect ใส่ Username และ Password ของ PSU Passport แล้วคลิก OK รอสักครู่ จะได้เป็นดังรูป เมื่อเลิกใช้งาน คลิกที่รูปการเชื่อมต่อเครือข่าย เพื่อเรียกดูการเชื่อมต่อเครือข่าย คลิกที่ vpn.psu.ac.th คลิก Disconnect จบ ขอให้สนุกครับ… หมายเหตุ หากต้องการให้ใส่ username และ password ใหม่ทุกครั้งให้เอาเครื่องหมายถูกหน้าข้อความ Remember my credentials ออกก่อนคลิก Create ในขั้นตอนแรก หากล็อกอินแล้วได้ Error เกี่ยวกับ Certificate ให้กลับมาใส่ vpn key อีกครั้ง Windows Vista/Windows 7 อาจใช้วิธีนี้ได้เช่นกันแต่วิธีการอาจต้องเปลี่ยนแปลงตามความเหมาะสมของ OS ที่มา http://www.hideipvpn.com/2012/03/howto-windows-8-l2tp-ipsec-vpn-setup-tutorial/

Read More »

แนวทางการพัฒนาเว็บแบบ Responsive Web Design

            เนื่องด้วยปัจจุบันความก้าวหน้าทางเทคโนโลยีและการให้บริการอินเตอร์เน็ตความเร็วสูงมีการพัฒนาอย่างต่อเนื่อง จึงส่งผลให้การเข้าถึงข้อมูลข่าวสารเป็นไปได้อย่างรวดเร็วและทั่วถึง ทำให้เหล่าผู้ผลิตรวมถึงนักพัฒนา พร้อมใจกันพัฒนาซอร์ฟแวร์และอุปกรณ์ต่างๆ ให้สามารถใช้งานอินเตอร์เน็ตได้ ไม่ว่าจะเป็นโทรศัพท์ Tablet หรือแม้แต่โทรทัศน์เองก็สามารถใช้งานอินเตอร์เน็ตได้เช่นกัน นั่นหมายความว่าปัจจุบันมีอุปกรณ์มากมายที่สามารถใช้งานอินเตอร์เน็ต ซึ่งมีคุณสมบัติที่แตกต่างกันออกไป เช่น ความกว้าง ความสูง ความละเอียดหน้าจอ และอื่นๆ อีกมากมาย            เมื่อพูดถึงการออกแบบเว็บไซต์เพื่อให้สามารถรองรับการใช้งานกับทุกอุปกรณ์ คนส่วนใหญ่มักมองว่าจำเป็นต้องใช้ต้นทุนในการผลิตที่สูงขึ้น เพื่อใช้ในการออกแบบเว็บไซต์แต่ละเวอร์ชั่นให้รองรับกับการใช้ของอุปกรณ์ที่ มีความลหากหลายได้ ซึ่งความจริงแล้วนั่นอาจเป็นแนวคิดที่ไม่ถูกต้องนัก เพราะ Responsive Web Design คือเทคโนโลยีการออกแบบเว็บไซต์ที่ช่วยให้คุณสามารถสร้างเว็บไซต์ที่รองรับทุกขนาดหน้าจอรวมถึงทุกอุปกรณ์สื่อสารด้วยต้นทุนที่ต่ำกว่า เวลาที่สั้นกว่า และประสิทธิภาพที่สูงกว่าการผลิตเว็บไซต์แยกหลายเวอร์ชั่น โดยในบทความนี้จะพูดถึงแนวคิดและแนวทางการพัฒนา Responsive Web Design แบบเบื้องต้นที่ผู้เขียนได้อ่านและรวบรวมมาให้ผู้ที่สนใจนำไปใช้ประโยชน์ได้ไม่มากก็น้อย Flexible Images ปัญหาที่เกิดขึ้นบ่อยในการออกแบบเว็บไซต์แบบ Responsive Web คือ ปัญหาเกี่ยวกับการแสดงผลรูปภาพบนอุปกรณ์ที่มีขนาดแตกต่างกัน ซึ่งปัจุบันมีเทคนิคมากมายที่ช่วยในการจัดการปัญหาดังกล่าว โดยเทคนิคที่ได้รับความนิยมมากคือนำ CSS มาช่วยในการออกแบบการแสดงผลดังกล่าวเนื่องจากสามารถทำได้ง่าย และไม่ซับซ้อน ดังนี้ img { max-width: 100%; } จากตัวอย่างข้างต้น เป็นการกำหนดขนาดของรูปภาพให้มีความกว้าง 100% แทนการกำหนดขนาดของรูปภาพแบบตายตัว (width: 100px) ทำให้การแสดงผลของรูปภาพจะขึ้นอยู่กับขนาดของหน้าจออุปกรณ์หรือความกว้างของบราวเซอร์แทน ข้อเสีย –         บราวเซอร์ Internet Explorer ยังไม่รองรับ properties ที่ชื่อว่า max-width  แต่สามารถแก้ไขโดยการใช้ properties ที่ชื่อว่า width แทน –          ในบราวเซอร์เวอร์ชั่นเก่าๆ ยังไม่รองรับเทคนิคการทำงานดังกล่าวเช่นกัน ซึ่งสามารถแก้ไขโดยการใช้ JavaScript ช่วยในการทำงานแทนได้ แม้วิธีข้างต้นจะเป็นการแก้ปัญหาการยืดหยุ่นของภาพได้ดีและรวดเร็ว แต่สิ่งที่ไม่ควรมองข้ามคือ ความละเอียดของภาพและเวลาในการโหลดรูปภาพ เนื่องจากในปัจจุบัน นิยมใช้งานเว็บไซต์ผ่านทาง Smartphone หรือ Tablet มากขึ้น การโหลดภาพที่มีขนาดใหญ่และความละเอียดสูงจะทำให้เสียเวลาและใช้พื้นที่โดยไม่จำเป็น Filament Group’s Responsive Images เป็นเทคนิค ที่ไม่เน้นการปรับขนาดของรูปภาพ แต่ใช้วิธีเลือกรูปภาพที่มีขนาดเหมาะสมกับอุปกรณ์มาแสดงแทน ซึ่งช่วยแก้ปัญหาการโหลดรูปภาพที่มีขนาดใหญ่มาแสดงผลในอุปกรณ์ที่มีขนาดเล็ก และลดการใช้พื้นที่โดยไม่จำเป็นได้ โดยการทำงานด้วยเทคนิคดังกล่าวจำเป็นที่จะต้องใช้ไฟล์บางตัว ซึ่งสามารถโหลดได้จาก Github ซึ่งมีขั้นตอนดังนี้ 1) โหลดไฟล์ที่จำเป็นตอนใช้งาน ซึ่งได้แก่  JavaScript, ไฟล์ .htaccess และไฟล์รูปภาพทั้งขนาดเล็กและขนาดใหญ่ 2) ทำการกำหนดคุณสมบติของรูปภาพให้อ้างอิงไปยังไฟล์รูปภาพนั้นๆทั้งขนาดเล็กและขนาดใหญ่ โดยวิธีการอ้างอิงของรูปภาพขนาดเล็กจะต้องอ้างอิงผ่าน attribute  SRC และรูปภาพขนาดใหญ่จะอ้างอิงผ่าน attribute data-fullsrc <img src=”smallRes.jpg” data-fullsrc=”largeRes.jpg”> ซึ่งแท็ก data-fullsrc เป็นแท็กที่เพิ่มเข้ามาใน HTML5 เพื่อใช้ในการโหลดรูปภาพกรณีที่หน้าจอมีความกว้างเกิน 480 pixels จากตัวอย่าง กรณีที่เปิดบนอุปกรณ์ที่มีขนาดความกว้างไม่เกิน 480 จะทำการโหลดภาพ smallRes.jpg ขึ้นมาแสดง แต่ในกรณีที่หน้าจอกว้างเกิน 480 จะทำการโหลดภาพ largeRes.jpg ขึ้นมาแสดง ตัวอย่าง Stop iPhone Simulator Image Resizing ปัจจุบันอุปกรณ์ของค่าย Apple ไม่ว่าจะเป็น IPhone(เวอร์ชั่น 4 ขึ้นไป) หรือ IPad(เวอร์ชั่น 2 ขึ้นไป) ได้นำเทคโนโลยีที่ช่วยในการแสดงผลของหน้าจอได้ดีขึ้นซึ่งมีชื่อเรียกว่า Retina Display ทำให้การแสดงผลของ Responsive Web บนอุปกรณ์ดังกล่าวไม่ได้ขนาดที่เหมาะสมกับที่ได้ทำการออกแบบไว้ ซึ่งมีเทคนิคในการแก้ไขปัญหาดังกล่าวโดยการนำค่า pixels มาเป็นตัวช่วยในการแก้ปัญหา ซึ่งจะขอธิบายในส่วนของเรื่อง pixels ให้ผู้อ่านได้เข้าใจก่อน pixels คือหน่วยที่ใช้วัดค่าความละเอียดของรูปภาพหรือหน้าจออุปกรณ์  pixels แบ่งได้  3 แบบด้วยกัน คือ Physical Pixels, CSS Pixels และ Device Pixels Physical Pixels คือ จำนวน pixels จริงๆ ตาม spec ของ Device นั้นๆ  เช่น iPhone3 เท่ากับ 320×480 ส่วน iPhone4 เท่ากับ 640×960

Read More »

Ubuntu NAT Router

เพื่อนครูที่โรงเรียนหนึ่งสอบถามเข้ามาว่ากำลังจะทำ Linux Router ด้วย Ubuntu 12.04 ผมก็มีอยู่ตัวหนึ่งที่ใช้ใน workshop อยู่พอดี ผมติดตั้ง Ubuntu 12.04 ที่มี network interface card จำนวน 2 อัน ทำอยู่ใน Oracle VM VirtualBox ผมติดตั้ง BIND โปรแกรมสำหรับทำ DNS server และ ISC-DHCP-SERVER โปรแกรมสำหรับทำ DHCP server เอาไว้ใช้ในการทดสอบเมื่อมี VM Guest เครื่องอื่นๆอยู่ภายใน internal network ไม่ต้องไปรบกวน IP Address ของสำนักงาน เพราะเครื่อง Guest อื่นๆ จะขอ DHCP IP จาก Ubuntu Router นั่นเอง แล้วยังสามารถตั้งชื่อโดเมนเนมให้กับเครื่อง Guest ได้อีกด้วย ในกรณีที่เราทำใช้งานใน Oracle VM VirtualBox นั้น network interface eth0 ก็ตั้งค่า Network Adapter เป็น NAT และ network interface eth1 ก็ตั้งค่า Network Adapter เป็น Internet Network ตั้งชื่อว่า Intnet1 แต่หากนำไปติดตั้งเป็น Linux Router สำหรับโรงเรียนด้วยเครื่องจริง network interface eth0 ก็เป็น IP Address ที่ได้รับจาก ADSL หรือ Leased Line ส่วน network interface eth1 ก็ตั้ง IP Address ตามใจชอบ ผมจึงคิดว่าก็น่าจะลองเขียนเป็นคำแนะนำส่งให้กับครูท่านนั้น แต่เพื่อให้สามารถต่อยอดต่อไปอีกได้ ผมจึงเขียนสะสมไว้ในหัวข้อเรื่อง คือ Ubuntu NAT Router ที่ Link นี้ http://opensource.cc.psu.ac.th/Ubuntu_NAT_Router ผมจึงมาบอกเล่าให้เพื่อนๆฟังครับ เผื่อว่าใครกำลังมองหาวิธีการนี้อยู่

Read More »

ติว “แนะนำและสอนการพัฒนาเบื้องต้นเกี่ยวกับ Application บนมือถือด้วย PhoneGap โดยใช้ HTML5 & Jquery Mobile”

กิจกรรมของ CoP PSU sysadmin ของเราในลำดับต่อไป ติว “แนะนำและสอนการพัฒนาเบื้องต้นเกี่ยวกับ Application บนมือถือด้วย PhoneGap โดยใช้ HTML5 & Jquery Mobile” เป็นการบรรยายพร้อมฝึกปฏิบัติการใช้โปรแกรม วันที่ 30-31 ก.ค. 56 เวลา 09.00-16.00 น. ห้องอบรมคอมพิวเตอร์ ชั้น 3 สำนักทรัพยากรการเรียนรู้คุณหญิงหลง อรรถกระวีสุนทร ตึก LRC ม.อ.หาดใหญ่ (รับจำนวน 50 คน) PhoneGap is a free and open source framework that allows you to create mobile apps using standardized web APIs for the platforms you care about. ท่านที่สนใจให้สมัครโดยส่งอีเมลมาที่ wiboon.w@psu.ac.th เนื้อหา วันแรก – เทคโนโลยีพื้นฐานของโมบายเว็บ – การพัฒนาโปรแกรมสําหรับมือถือ – เทคโนโลยีพื้นฐานของโมบายเว็บ – jQuery Mobile (JQM) – การติดตั้งเครื่องมือสำหรับพัฒนา Application บนมือถือโดยใช้ PhoneGap API วันที่สอง – PhoneGap Framework – PhoneGap sample workshop ทีมวิทยากร วิทยากร นายวิทยา พันดวง บริษัทพัฒนาซอร์ฟแวร์ส่วนตัว ผู้ช่วยวิทยากร ทวีศักดิ์ ปัญญาใส บริษัทพัฒนาซอร์ฟแวร์ส่วนตัว ผู้ช่วยวิทยากร พัฒนาวดี ศิวติณฑุโก คณะวิศวกรรมศาสตร์ ประวัติวิทยากรประวัติการศึกษา ปริญญาตรี วิทยาการคอมพิวเตอร์ มหาวิทยาลัยวลัยลักษณ์ประวัติการทำงาน 1.ผู้ช่วยวิจัยโครงการพัฒนาฐานข้อมูลความหลากหลายทางชีวภาพระดับประเทศ NBIDS-BRT สังกัด มหาวิทยาลัยวลัยลักษณ์ ภายใต้ความร่วมมือระหว่างมหาวิทยาลัยวลัยลักษณ์ และ BIOTEC 2.พัฒนาฐานข้อมูล GGIS ฐานข้อมูลภูมิสารสนเทศสำหรับครูทั่วประเทศ พัฒนาร่วมระหว่างสสวท. และ มหาวิทยาลัยวลัยลักษณ์ประวัติการเป็นวิทยากร 1.อบรมการพัฒนาฐานข้อมูลบนเว็บด้วย PHP และ Google Maps API มหาวิทยาลัยราชภัฏนครศรีธรรมราช 2.อบรมการพัฒนาเว็บไซต์ด้วย Yii Framework (PHP Framework) มหาวิทยาลัยราชภัฏนครศรีธรรมราช 3.อบรมการพัฒนาเว็บไซต์ด้วย Yii Framework (PHP Framework) สถาบัน STEC อ.ทุ่งสง จ.นครศรีธรรมราช 4.อบรมการพัฒนาเว็บไซต์ด้วย Yii Framework (PHP Framework) สำนักงานใหญ่ สรรพากรภาค 11 จ.สุราษฎร์ธานี 5.อบรมการพัฒนาฐานข้อมูลภูมิสารสนเทศ ด้วย Access และ Google Earth มหาวิทยาลัยวลัยลักษณ์ 6.อบรมการพัฒนา Application บน Android เบื้องต้น ให้อาจารย์และนักศึกษา มหาวิทยาลัยราชภัฏนครศรีธรรมราช 7.อบรมการพัฒนา Application บน Android เบื้องต้น ให้บุคลากรและนักศึกษา ณ ฝ่ายคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยสงขลานครินทร์ วิทยาเขตหาดใหญ่ รายชื่อผู้สมัครเข้าร่วม ดุษณี  โสภณอดิศัย    คณะนิติศาสตร์ กัมปนาท โชติกุล    ศูนย์คอมพิวเตอร์ ชาตรี คู่ณรงค์นันทกุล    ศูนย์คอมพิวเตอร์ ภัทธ์ เอมวัฒน์    สำนักวิทยบริการ ม.อ.ปัตตานี กิตติศักดิ์ แก้วเนียม   สำนักวิทยบริการ ม.อ.ปัตตานี ศิลประภา ศิลปรัตน์    สำนักวิทยบริการ ม.อ.ปัตตานี คณกรณ์ หอศิริธรรม    ศูนย์คอมพิวเตอร์ เกรียงไกร หนูทองคำ   

Read More »