วิธีแจ้งเตือนจาก Google Forms เข้า LINE

ต้องยอมรับว่า ปัจจุบันพฤติกรรมผู้ใช้ “ทั่วไป” จะเปิด LINE อ่านบ่อย และเร็วกว่าการเปิดอ่าน Email ต่อไปนี้ เป็นวิธีการ ตั้งค่าที่ Google Forms ว่า เมื่อมีคน Submit แบบฟอร์มมา ให้มา Alert ที่ LINE ของเรา หรือ ส่งเข้า LINE Group ก็ได้ โดยอาศัยความสามารถของ Google App Scripts ที่เรียก REST API ของ LINE สร้าง หรือ แก้ไข Google Forms ที่ต้องการ จากนั้น ไปที่ “More” หรือ ปุ่มสามจุดแนวตั้งด้านขวามือบน แล้ว คลิกที่ Script Editor จากนั้น ใส่ Google App Script ตามนี้ ในที่นี้ ตั้งชื่อ Function คือ sendLineNotification **** อย่าลืมเปลี่ยน YOUR-TOKEN-GO-HERE ที่จะได้จากขั้นตอนต่อไป **** ตั้งชื่อ Project, Save แล้ว Run ** อย่าลืม ตั้งชื่อ Project แล้ว Save ด้วย จากนั้น กดปุ่ม Run เพื่อให้เกิดการขอ Authorization ตาม OAuth Scope ซึ่งจะเจอ Error นี้ ก็ไม่เป็นไร (เพราะไม่มี ข้อมูลส่งมาจริง ๆ นั่นเอง) ให้กด Dismiss ไป ไปตั้ง Trigger ไปที่ เมนู Edit > Current project’s triggers ตั้งค่า Trigger ให้ทำงานทันทีที่มีการ Submit แบบฟอร์ม Trigger คือการตั้งค่าให้ Script นี้ทำงานอัตโนมัติ เมื่อมีการ Submit แบบฟอร์ม คลิก Add Trigger แล้วเลือก Function “sendLineNotification” เลือก “on form submit” และ “Notify me immediately” เพื่อให้เมื่อมีการ Submit แบบฟอร์ม ก็จะแจ้งทาง LINE ทันที จากนั้น กดปุ่ม Save ผลที่ได้คืออย่างนี้ ขั้นตอนการขอ LINE Token ไปที่เว็บไซต์ https://notify-bot.line.me/my/ แล้ว Login ด้วย LINE Account ของท่าน จากนั้น คลิกปุ่ม Generate token ตั้งชื่อ และ เลือกว่าจะ Notify ไปที่ใด เราสามารถเลือกได้ว่า ให้ Notify ไปที่เราคนเดียว ให้ Notify ไปยัง Group Chat *** เราต้องเพิ่ม Line Notify เป็นเพื่อนก่อน และ Invite เข้าไปใน Group Chat นั้น ๆ ด้วย จากนั้น คลิกปุ่ม Generate Token ก็จะได้ Token ให้คลิกปุ่ม Copy แล้วคลิก Close จากนั้น นำไปแทนที่ YOUR-TOKEN-GO-HERE ใน Google

Read More »

การ Connect Navicat ผ่าน xampp-linux 7.3.12 บน Ubuntu 18.04

Download ไฟล์ ntunnel_mysqli.phphttps://qrgo.page.link/6G6uX โยน File ชื่อว่า ntunnel_mysqli.php เข้าไปใน Server ที่ wwwroot ทดสอบโดยการเข้าเว็บบราว์เซอร์ ด้วย : 192.168.xxx.xxx/ntunnel_mysqli.php แล้วลอง login ดูว่าผ่านไหม ? 6. ไปที่ General – Connection Name = ตั้งชื่ออะไรก็ได้ – Host Name / IP Address = localhost – Port = 3306 – User Name = root หรือ User ที่เรา Add ใน phpmyadmin – Password = Password ที่เรา Add ใน phpmyadmin 7. ไปที่ HTTP – ติ๊กเลือก Use HTTP Tunnel – Tunnel URL : https://192.168.xxx.xxx/ntunnel_mysqli.php หรือ https://xxxx.com/ntunnel_mysqli.php 8. Test Connection หาก Connect ไม่ผ่าน ให้เข้าไปแก้ไฟล์ my.cnf บรรทัดที่เขียนว่า skip-networking ให้ไป # ปิดใว้ แล้ว Restart Service ใหม่อีกครั้ง หมายเหตุ : ผมได้ทดสอบกับ xampp-linux 7.3.12 บน Ubuntu 18.04 php 5.4 up มันจะใช้ mysqli เป็นส่วนใหญ่ เลยต้องใช้ ntunnel_mysqli

Read More »

ปัญหา “A potentially dangerous Request.Form value was detected from the client (ctl00$ContentPlaceHolder1$txtAbstractEng="…ontrol ” แก้ไขได้อย่างไร

ในการป้อนข้อมูลลงในเว็บ บางครั้งเราอาจจะพบปัญหาว่าไม่สามารถบันทึกข้อมูลที่ป้อนได้ ทั้งๆ ที่ปกติก็บันทึกได้อยู่ แล้วมันเกิดจากอะไร เรามาดู ปัญหา สาเหตุ และวิธีการแก้ไขกันค่ะ เผื่อจะเป็นปัญหาเดียวกัน ปัญหา : ในการบันทึกข้อมูลลงบางเว็บไซต์เราจะอาจจะพบปัญหาว่าหลังจากเราป้อนข้อมูลเสร็จแล้ว แต่ทำไมไม่สามารถบันทึกข้อมูลได้ เกิด error เช่น เมื่อบันทึกจะมีข้อความขึ้นดังภาพข้างล่าง ป้อนใหม่บันทึกใหม่ก็ยังไม่ได้ โอ๊ยเครียด จะทำยังไงดี สาเหตุ : อาจจะเนื่องมาจากมีการ copy ข้อมูลมาจากแหล่งอื่นที่มีตัวอักษรพิเศษบางตัว  เช่น ? ติดมาด้วย ทำให้เราจะไม่สามารถบันทึกข้อมูลลงฐานได้ เราจะทำอย่างไร การแก้ไข : สามารถแก้ไขได้หลายวิธี คือ ในกรณีที่เป็นผู้ใช้งาน เราสามารถแก้ไขง่ายๆ ได้โดยการ นำ ? ออกจากข้อความ ดังรูปข้างล่าง แล้วบันทึกใหม่ 2. ในกรณีที่เป็นผู้พัฒนาระบบ เราจะเพิ่มข้อความ ValidateRequest=”false” ลงใน source ของหน้าจอที่ error ดังรูปข้างล่าง เพียงเท่านี้ปัญหาดังกล่าวก็จะหมดไปแล้วค่ะ ไม่ยากเลยใช่มั้ยคะ แล้วพบกันใหม่ค่ะ

Read More »

วิธีติดตั้ง Expo CLI สำหรับพัฒนา Mobile App ด้วย React Native

สำหรับผู้พัฒนาที่ต้องการพัฒนา Mobile App แต่รู้สึกว่ายังไม่พร้อมศึกษา React Native แบบจริงจัง สามารถใช้งาน Expo Framework โดยสามารถใช้ได้ทั้งในการพัฒนา หรือ Build ขึ้น Store ได้เลยทั้ง iOS/Android ด้วยภาษา JavaScript/TypeScript โดยวันนี้จะเริ่มด้วยแนะนำวิธีติดตั้ง Tools สำหรับพัฒนาชื่อ Expo CLI ครับ Reference : https://docs.expo.io/versions/latest/ Installation Version windows 10 version 1909 64 bit npm 12.14.0 LTS python 3.8 Expo SDK 36 ติดตั้ง Node Js (โหลดติดตั้งแบบ LTS)https://nodejs.org/en/ ถ้ามีแจ้งไฟล์ไม่ปลอดภัยกดข้ามไป จะมีให้เลือกว่าจะลง Chocolatey หรือเปล่า เพื่อติดตั้ง Module เพิ่มเติม และแนะนำติดตั้ง Node-Gyp ซึ่งจะต้องติดตั้งเองภายหลัง ติดตั้ง Python ก่อนติดตั้ง Node-Gyp ผ่าน Windows Store (หลังกด Get ไม่ต้อง Sign In ก็ได้) เปิด windows cmd (Run as Administrator หรือไม่ก็เลือก Start->Node.js command prompt) ติดตั้ง node-gypnpm install -g node-gyp ติดตั้ง Expo CLI ด้วย npmnpm install -g expo-cli ทดสอบสร้างโปรเจ๊คใหม่ดังนี้ expo init สั่งรัน Web สำหรับ Debug จะพบว่า Error สำหรับ Expo SDK 36 ต้องแก้ \node_modules\metro-config\src\defaults\blacklist.js ดังนี้var sharedBlacklist = [ /node_modules[\/\\]react[\/\\]dist[\/\\].*/, /website\ /node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ]; สามารถทดสอบเปิดได้ผ่านโปรแกรม Expo ใน Android/IOS หรือ Emulator Android หรือจะผ่าน USB Debug Android ก็ได้ครับ โดยได้ทั้ง QR-Code หรือ Exp URL Copy ไปแป๊ะในโปรแกรมได้ครับ (ต้องอยู่ในวง Network เดียวกันยกเว้นทดสอบโดยใช้ Tunnel)

Read More »

djsurvey – Google Forms Alternative #01

ต่อจาก ddready – แพ็ครวม django + bootstrap4 + crispy form + docker พร้อมใช้งาน ในบทความนี้ ผมได้พยายามทำให้ใช้งาน Django ได้ง่ายขึ้น จนได้ แบบสำรวจอย่างง่าย พร้อมใช้งาน ใน 3 ขั้นตอน Prerequesite ติดตั้ง Python 3.6+ หรือ ใช้ Python Container แล้ว Repository https://github.com/nagarindkx/djsurvey ง่าย ๆ 3 ขั้นตอน 1. Clone Repository ใช้คำสั่ง git หรือ Download ไปก็ได้ https://github.com/nagarindkx/djsurvey/archive/master.zip 2. กำหนดข้อคำถามในแบบสำรวจ แก้ไขไฟล์ ตัวอย่างเช่น แบบสำรวจ ประกอบด้วย ชื่อ อีเมล เพศ วันเดือนปีเกิด ผลไม้ที่ชอบ ข้อเสนอแนะ ก็สร้าง Model ตามนี้ ( แรก ๆ อาจจะรู้สึกน่ากลัว แต่พอเข้าใจแล้ว มันง่ายมาก) แนะนำให้ใช้ Visual Studio Code จะทำงานได้ง่ายมาก 3. Migrate แล้ว Run ใช้คำสั่งต่อไปนี้ ชมผลงาน http://localhost:8080/survey/ หรือ ตกแต่งอีกนิดหน่อย ก็จะได้แบบนี้ http://localhost:8080/advancedsurvey/ สำหรับผู้ที่ใช้ Docker สามารถ ทำตามขั้นตอนใน แนวทางการพัฒนา Web Application ด้วย django จาก local docker สู่ Google Cloud Run เพื่อนำขึ้น Google Cloud Run ได้เลย (แต่ต้องเชื่อมกับ Database จริง ๆ ก่อนนะ – โปรดติดตามตอนต่อไป) คุณกำลังเจอปัญหาเหล่านี้อยู่ใช่ไม๊ ? Google Forms ก็ง่ายดีแหล่ะ แต่ จะทำอย่างไรให้เก็บข้อมูลไว้ในฐานข้อมูลได้ ? อยากให้ ผู้ใช้งาน Upload เอกสารเข้ามา / แก้ไขข้อมูล ซึ่ง Google Forms ก็ทำได้ แต่ต้อง Login ด้วย Google Account ก่อน จึงจะทำได้ Google Forms ก็ทำ Conditions ได้แหล่ะ (Go to section base on answer) แต่ ถ้าจะให้มีการคำนวนที่ซับซ้อนกว่านั้น ก่อนจะเลือกคำถามถัดไป จะทำอย่างไร ? ปัญหาเหล่านี้จะหมดไป เมื่อคุณใช้ Django ! ติดตั้งได้ บน Web Server ของคุณ! Login ด้วย Facebook/Twitter/Google/Line หรือ Email หรือ จะเป็น Single Sign-On ก็ยังได้ ทุกอย่างสามารถ Customize ได้ ทำแบบสอบถามที่ซับซ้อนได้ ไว้เจอกันในตอนต่อ ๆ ไปครับ

Read More »