วิธีเช็ค reCaptcha (รีแคปช่า) ใน joomla

รีแคปช่าเป็นระบบที่เช็คว่าคนที่เข้ามาใช้งานเป็นคนจริงๆไม่ใช่โปรแกรมอัตโณมัติ
reCaptcha (รีแคปช่า)

 

          Captcha (แคปช่า) ย่อมาจาก Completely Automated Public Turing Computer and Humans Apart โดยตัว reCaptcha  (รีแคปช่า) จะเป็นตัวที่เช็คว่าคนที่เข้ามาใช้งานเป็นคนจริงๆไม่ใช่โปรแกรมอัตโนมัติ (Bot) โดยเราสามารถเช็คได้ว่าเมื่อผู้ใช้งานกด submit มานั้นมีค่าของตัว reCaptcha  (รีแคปช่า) มาหรือไม่โดยใน Joomla จะสามารถเช็คเมื่อฟอร์มส่งค่าไปยัง controllers โดยจะสร้างเงื่อนไขเช็คในฟังก์ชันอีกทีนึงสามารถทำได้ดังนี้

 

วิธีการเช็ค reCaptcha (รีแคปช่า) ดังนี้

  1. ทำการสมัคร google reCaptcha ดังรูป
    รีแคปช่าเป็นระบบที่เช็คว่าคนที่เข้ามาใช้งานเป็นคนจริงๆไม่ใช่โปรแกรมอัตโณมัติ
    Google reCaptcha
  2. จากนั้นนำโค้ดที่ได้ไปแปะในไฟล์ default.php ที่อยู่ในโฟลเดอร์ tmpl ที่อยู่ในโฟลเดอร์ view อีกทีนึง
    รีแคปช่าเป็นระบบที่เช็คว่าคนที่เข้ามาใช้งานเป็นคนจริงๆไม่ใช่โปรแกรมอัตโณมัติ
    โค้ดที่เอาไปใช้ใน view
  3. จากนั้นก็ไปสร้างเงื่อนไขในฟังก์ชันที่ฟอร์มเรียกใช้ ดังโค้ด
    $name = $post->get('name');
    $cappv = $post->get('g-recaptcha-response');
    $url = JRoute::_("index.php?option=com_mindphptest&view=mindtest");
    $msg = 'กรุณายืนยันตัวตนก่อน';
    $accountingpv;
    $captcha;
    if(isset($name)){
       $accountingpv = $name;
    }if(isset($cappv)){
       $captcha = $cappv;
    }if(!$captcha){
    //หากไม่ยืนยันตัวตนก็จะแสดงข้อความแจ้งว่ากรุณายืนยันตัวตนก่อนและจะกลับมายังหน้าฟอร์มอีกครั้งตาม url ที่ระบุไป
       $this->setRedirect($url, $msg);
       return false;
    }
    $secretkey= 'ระบุ secret (required) key';
    $ip = $_SERVER['REMOTE_ADDR'];
    $response = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$secretkey.'&response='.$captcha.'&remoteip='.$ip);
    $responseKeys = json_decode($response,true);​

 

           ในการเช็คตัวรีแคปช่ามันมีข้อดีตรงที่ในการที่จะบันทึกข้อมูลลงฐานข้อมูลนั้น เราก็ต้องเช็คความปลอดภัยในการที่จะบันทึกข้อมูลลงในฐานข้อมูลได้ เพราะหากเจอโปรแกรมที่ทำงานอัตโนมัตพวกโปรแกรมแบบนี้จะกรอกข้อมูลลงในฟอร์มแล้วกดปุ่ม submit หากฟอร์มไหนไม่ทำตัวรีแคปช่าดัก เมื่อโปรแกรมอัตโนมัต (Spam) มาเพิ่มข้อมูลอะไรไปหรือมาทำการสมัครก็จะมีการบันทึกข้อมูลลงไปได้ และ มันก็จะเป็นอันตรายต่อเว็บเราได้จึงทำให้เราควรที่จะใช้ตัวรีแคปช่าเช็คอีกทีนึงเพื่อป้องกันจากผู้ไม่หวังดี

 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : Joomla

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
SQL JOIN: การรวมข้อมูลจากหลายตารางในฐานข้อมูล
โดย witsarutt000 พฤ 14 มี.ค. 2024 4:07 pm บอร์ด SQL Knowledge
1
289
พฤ 14 มี.ค. 2024 5:44 pm โดย Sirayu View Topic SQL JOIN: การรวมข้อมูลจากหลายตารางในฐานข้อมูล
PHP การเปลี่ยนแปลงที่สร้างปรากฏการณ์ในโลกของเว็บ
โดย witsarutt000 พฤ 14 มี.ค. 2024 11:17 am บอร์ด PHP Knowledge
0
180
พฤ 14 มี.ค. 2024 11:17 am โดย witsarutt000 View Topic PHP การเปลี่ยนแปลงที่สร้างปรากฏการณ์ในโลกของเว็บ
ปัญหา Harddisk ขึ้น 100% เวลาเซฟไฟล์ หรือภาพ จะค้่างที่หน้าแท๊บ Expolorer
โดย Thanavat_n พ 13 มี.ค. 2024 11:02 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
5
416
พ 13 มี.ค. 2024 1:34 pm โดย Thanavat_n View Topic ปัญหา Harddisk ขึ้น 100% เวลาเซฟไฟล์ หรือภาพ จะค้่างที่หน้าแท๊บ Expolorer
ตู้รองเท้า ไอเท็มวิเศษช่วยจัดระเบียบคอลเลกชันรองเท้าคู่โปรด
โดย @Foretoday อ 12 มี.ค. 2024 1:46 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
226
อ 12 มี.ค. 2024 1:46 pm โดย @Foretoday View Topic ตู้รองเท้า ไอเท็มวิเศษช่วยจัดระเบียบคอลเลกชันรองเท้าคู่โปรด
แนะนำสถานที่น่าเที่ยวในจังหวัดชุมพรพร้อมวิธีการเดินทาง
โดย witsarutt000 จ 11 มี.ค. 2024 6:14 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
177
จ 11 มี.ค. 2024 6:14 pm โดย witsarutt000 View Topic แนะนำสถานที่น่าเที่ยวในจังหวัดชุมพรพร้อมวิธีการเดินทาง
ย้าย VM ข้าม Host ด้วย scp กรณีศึกษา Vmware ESXI
โดย mindphp อ 10 มี.ค. 2024 4:36 am บอร์ด Linux - Web Server
0
272
อ 10 มี.ค. 2024 4:36 am โดย mindphp View Topic ย้าย VM ข้าม Host ด้วย scp กรณีศึกษา Vmware ESXI
IP และ vpn (VMware)
โดย ballmykids อ 10 มี.ค. 2024 2:35 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
230
จ 11 มี.ค. 2024 3:19 pm โดย ballmykids View Topic IP และ vpn (VMware)
แบบนี้ต้องทำยังไง ในกรณีที่ Server เดิมเราได้ทำการ Raid 1 กับ HDD 2 ลูกแรกแล้ว
โดย Anonymous ศ 08 มี.ค. 2024 7:02 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
190
ศ 08 มี.ค. 2024 8:12 pm โดย mindphp View Topic แบบนี้ต้องทำยังไง ในกรณีที่ Server เดิมเราได้ทำการ Raid 1 กับ HDD 2 ลูกแรกแล้ว