เนื่องจากมีบางโปรเจ็คถูก spam bot มาเยี่ยมเยียนบ่อย เลยคิดว่าหา Captcha มาติดเพิ่มเติมจะดีกว่า เลยมาจบที่แพ็กเกจที่ชื่อว่า No CAPTCHA reCAPTCHA ดูแล้วใช้งานไม่ยากนัก มาดูวิธีติดตั้งและใช้งานเบื้องต้นกันเลยครับกันเลยครับ

สำหรับ Laravel 4 ให้ใช้ v1 branch นี้ครับ

ติดตั้ง

ตั้งค่า

เนื่องจากแพ็กเกจนี้ support ตัว Auto-discovery ดังนั้นถ้าใช้ Laravel 5.5 ขึ้นไป ให้ข้ามไปยังการกำหนดค่าในไฟล์ .env

ในไฟล์ app/config/app.php ให้เพิ่มตามด้านล่างนี้

1. เพิ่ม ServiceProvider ใน providers array

2. เพิ่ม class alias ใน aliases array

3. ทำการ Publish ค่า config

กำหนดค่า

เพิ่ม NOCAPTCHA_SECRET และ NOCAPTCHA_SITEKEY ในไฟล์ .env ดังนี้

(สามารถไปรับ secret-key และ site-key ได้จาก ที่นี่)

วิธีใช้งาน

ให้ไปที่ฟอร์มในไฟล์ blade template ที่เราต้องการติดตั้ง reCAPTCHA และให้ใส่โค้ดตามด้านล่างนี้ เพื่อดึงไฟล์ Javascript สำหรับเรียกใช้ API

เพิ่มโค้ดด้านล่างนี้ เพื่อแสดงผล reCAPTCHA

การตรวจสอบ

เพิ่มกฏ 'g-recaptcha-response' => 'required|captcha' ไปยัง rules array ดังนี้

กลับมาที่ฟอร์มในไฟล์ blade template เพิ่มโค้ดด้านล่างนี้ เพื่อแสดง captcha error

ก็หวังว่าคงมีประโยชน์สำหรับใครที่ต้องการใช้งานนะครับ จริงๆแล้ว มันยังมี Option ต่างๆอีก ทั้งTesting หรือใช้กับ PHP เพียวๆ เลยลองไปอ่านเพิ่มเติมตามลิงค์ด้านล่างต่อได้เลยนะครับ

อ้างอิง https://github.com/anhskohbo/no-captcha

Author:

ชื่อ ศิริชัย ธีรภัทรสกุล ชื่อเล่น “ตั้ม” ทำงานด้านพัฒนาเว็บไซต์ สนใจเรื่องการพัฒนาตัวเอง หลงใหลการถ่ายรูป เวลาว่างมักชอบอ่านหนังสือ และเขียนบล็อก