ATOM #3 – การติดตั้ง Atom Linter PHP บน Windows

เจ้า Linter นี้ใช้สำหรับดักจับเวลาเรา coding มันจะแสดง error และ warning ขึ้นมาทันที โดยเราไม่ต้องไปเสียเวลา compile หรือเปิดหน้าเว็บดูใหม่นั่นเอง มันช่วยให้ code ใช้เวลาสั้นลงและมีคุณภาพมากยิ่งขึ้น มาว่ากันเรื่องการติดตั้ง package linter-php สำหรับ Windows ที่ลงพวก WAMP, XAMPP, AppServ เป็นต้น หรือใครจะติดตั้งแบบอื่นก็ไม่ว่ากัน ติดตั้ง Package linter-php ด้วยการเข้าไปที่ Settings > Install > พิมพ์ lint php ดังภาพ จะพบ linter-php ให้กด install แล้วรอ จนกว่าจะเสร็จ เราจะมีเริ่มขึ้นตอนการตั้งค่าเพื่อให้มันใช้งานกับ Windows ได้ ให้คลิกที่ Open Config Folder จากนั้นเปิดไฟล์ config.cson ขึ้นมา ซึ่งในตัวอย่างของ …

ATOM #2 – การติดตั้ง Packages

ต่อกันด้วยเรื่องของ Package ของ ATOM ซึ่งก็ไม่ต่างจาก sublime text เท่าไรนัก เท่าที่ทดสอบดู มันจะต่างกันตรง feature บางอย่างใน atom ไม่มี และบางอย่างก็ต้องอาศัยการตั้งค่าเยอะหน่อย แต่ถือว่าพอรับได้ ซึ่งตรงส่วนของ setting นี่ผมชอบเป็นพิเศษเลยเพราะว่ามันเป็น UI ไม่ใช่แบบ json เหมือน sublime text แต่ของ atom เขาจะเรียกว่า cson ซึ่งนามสกุลไฟล์มันก็จะเป็น .cson นั่นเอง ซึ่งเราก็สามารถเลือกตั้งค่าได้ทั้งแบบ UI และ cson ตามความถนัด วิธีติดตั้ง Package  1. เลือกที่ File > Settings หรือจะกด Ctrl + , (เครื่องหมาย comma)ก็ได้ 2. เลือกไปที่ install จากนั้นพิมพ์ ในช่อง Search …

ATOM #1 – แนะนำ atom editor

ติดตามมาซักพักแล้วกับ ATOM editor โดย Github “A hackable text editor for the 21st Century” ตอนนั้นยังเป็นตัว Alpha อยู่ ผมไม่ไม่ได้โหลดมาใช้ จนตอนนี้ปล่อย version 1.0 ออกมาซักพักแล้ว เลยเอามาลองเสียหน่อย ซึ่งตัว Application เองสร้าง web tectnology แสดงผลเป็น HTML, JavaScript, CSS และ Node.js run อยู่บน Electron เจ๋งไปเลย ซึ่งการใช้งานมันก็เหมือนกับ sublime text นี่แหละ แต่ข้อดีของมันคือ SUPPORT THAI LANGUAGE ซึ่งตัดปัญหาเรื่อง “สระลอย” แบบ sublime ไปได้เลย เมนูการใช้งานคล้ายๆกัน shortcut key คล้ายๆ กัน …

ข้อพึงระวัง ในการใช้ PDO Transaction กับ auto_increment

ผมมีปัญหาเกี่ยวกับการใช้ transaction ซึ่งเดิมผมสร้าง table ไว้ 3 ตาราง เป็น MyISAM แต่ตอนหลังพบปัญหาข้อมูลไม่ถูกต้อง จึงเปลี่ยนเป็น InnoDB เพื่อทำ foreign key เชื่อมกัน ปัญหาที่พบคือ บางครั้ง INSERT ข้อมูลไปแล้วทั้ง 3 ตารางพร้อมกัน ข้อมูลมันติดค้างอยู่ใน transaction ซักพักก็ rollback ออกมา ทั้งที่ได้ข้อมูลครบถ้วนทุกอย่าง (พอ insert ผมลอง select ดู ซึ่งเท่าที่คิดน่าจะไป select จากใน trancaction ออกมาแสดง ) ปัญหานี้ทำให้ field ที่เป็น PK {auto increment} เลขมันรันต่อไปแล้ว แต่ record กลับไม่มี ปัญหาต่อมาคือ try INSERT ไปแล้ว ไม่แจ้ง error …

วิธีแก้ wamp server เปิดเข้าจากเครื่องอื่นไม่ได้

เมื่อเราติดตั้ง WAMP Server ไว้ที่เครื่องส่วนมากแล้วจะเปิดโดยการเข้าไปที่ที่ localhost แต่กระนั้น บางครั้งเราต้องการให้เครื่องอื่นเข้ามาทดสอบระบบ โดยการใช้ local ip อาทิเช่น 192.168.1.2/example ปัญหาจะเกิดขึ้นเมื่อเรายังไม่ได้ Put Online ทำให้เครื่องอื่นไม่สามารถเข้ามายัง server ของเราได้ โดยหน้า Browser จะแจ้งว่า Forbidden ว่าคุณไม่มีสิทธิ์เข้าถึงส่วนนี้  แก้ไขโดย คลิกที่ icon ของ wamp server และเลือกที่ Put Online ด้านล่าง ดังภาพ หากต้องการปิด ก็เพียงคลิก icon เหมือนเดิมและเลือก Put Offline  เปิดให้เครื่องอื่นสามารถเข้ามาใช้งานได้ ปิดไม่ให้เครื่องอื่นเข้าถึง Server ของเราได้

AppServ มันกาก ทำไมไม่เลิกใช้? อุ้ย! ผมขอถอนคำพูด

ผมไม่รู้คนอื่นเขาจะตื่นเต้นกันมั้ยนะ แต่ผมรู้สึกตื่นเต้นและดีใจที่ได้เห็น AppServ โปรแกรม package ระดับตำนานกลับมาอีกครั้ง ใน version AppServ 8.5.6 (for PHP 5.6) และ AppServ 8.7.0 (for PHP 7.0) ต้องยอมรับว่าผมเองก็เติบโตมากับโปรแกรมนี้ สมัยที่หัดเขียนเว็บใหม่ๆ ซึ่งบอกเลยว่านักพัฒนาเว็บไซต์ยุคผมจนถึงปัจจุบัน แทบไม่มีใครไม่รู้จัก AppServ เพราะมันใช้งานง่าย ติดตั้งง่าย สะดวก แต่… พอพักหลังๆ AppServ หยุดไปนานที่เวอร์ชั่น 2.5.10 เป็น PHP 5.2.6 ซึ่งถ้าพูดถึงวันนี้ วันที่ผมเขียน มันก็ผ่านมาเกือบ 8 ปีแล้ว!! ผมเองเริ่มใช้ AppServ ตั้งแต่ version แรกๆเลย จำความได้ว่าเป็น 1.9.x แล้วขยับมา 2.3.x – 2.4.x ตั้งแต่ไม่บังคับใส่รหัสผ่านของ MySQL ผมใช้ root กับ password …