ให้เรตสมาชิก: 5 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งาน
 

วิธีเช็ค 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 หากฟอร์มไหนไม่ทำตัวรีแคปช่าดักเมื่อโปรแกรมอัตโนมัตมาเพิ่มข้อมูลอะไรไปหรือมาทำการสมัครก็จะมีการบันทึกข้อมูลลงไปได้และมันก็จะเป็นอันตรายต่อเว็บเราได้จึงทำให้เราควรที่จะใช้ตัวรีแคปช่าเช็คอีกทีนึงเพื่อป้องกันจากผู้ไม่หวังดี

 

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

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
เปิดใช้งาน log_slow_queries MySQL 5.7 บน Ubuntu
โดย mindphp อ 31 ธ.ค. 2019 5:55 pm บอร์ด Linux - Web Server
0
730
อ 31 ธ.ค. 2019 5:55 pm โดย mindphp
อยากทราบวิธีการแสดงที่มี id ซ้ำกันครับ
โดย jamepiyawat ส 28 ธ.ค. 2019 4:22 pm บอร์ด Programming - PHP
3
80
พฤ 02 ม.ค. 2020 8:47 am โดย tsukasaz
ปฏิทินประจําปี 2563 นักษัตย์ 12 ราศี ของจีนที่เรามักคุ้นเคยกัน
โดย noppadonsk ส 28 ธ.ค. 2019 10:40 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
239
ส 04 ม.ค. 2020 4:38 am โดย mindphp
คำสั่งจาก LINE API บันทึกเรียบร้อยแล้ว แต่ไม่เข้าไปใน inbox e-mail : order@dapper.com [2019-12][002]
โดย thatsawan ศ 27 ธ.ค. 2019 5:56 pm บอร์ด MD-CRM - Tester
2
5
ศ 27 ธ.ค. 2019 9:25 pm โดย mindphp
อยากทราบวิธีการอัพโหลดรูปภาพลงใน9kik'ฐานข้อมูล ของ phpbb
โดย Ittichai_chupol ศ 27 ธ.ค. 2019 4:22 pm บอร์ด Programming - PHP
1
73
ศ 27 ธ.ค. 2019 4:38 pm โดย thatsawan
ปฏิทินประจําปี 2563 ธีมการศึกษาสำหรับเด็กเรียน
โดย noppadonsk ศ 27 ธ.ค. 2019 10:41 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
269
ส 04 ม.ค. 2020 4:38 am โดย mindphp
B - ข้อมุลเชื่อม ตำบลที่มี รหัสไปรษณี ไม่เหมือน อำเภอข้อมมูลผิด
โดย mindphp พฤ 26 ธ.ค. 2019 3:01 pm บอร์ด Odoojob.com - Tester
0
1
พฤ 26 ธ.ค. 2019 3:01 pm โดย mindphp
ปฏิทินประจําปี 2563 มาในธีมปาร์ตี้และการเฉลิมฉลอง
โดย noppadonsk พฤ 26 ธ.ค. 2019 1:51 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
229
ส 04 ม.ค. 2020 4:38 am โดย mindphp
B - SQL ทำงานช้า
โดย mindphp พ 25 ธ.ค. 2019 10:07 pm บอร์ด Odoojob.com - Tester
0
1
พ 25 ธ.ค. 2019 10:07 pm โดย mindphp
ทิปเล็กๆ การใช้งาน Directadmin บน Ubuntu หรือ CentOS ใช้ .tar.gz จะทำงานได้เร็วกว่า..
โดย mindphp พ 25 ธ.ค. 2019 8:53 pm บอร์ด Linux - Web Server
0
32
พ 25 ธ.ค. 2019 8:53 pm โดย mindphp
เครื่องมือในการคำนวณภาษีหัก ณ ที่จ่าย ลดภาระการเสียภาษีก้อนใหญ่ได้ง่ายๆ
โดย prmindphp พ 25 ธ.ค. 2019 6:56 pm บอร์ด MindPHP News & Feedback
0
30
พ 25 ธ.ค. 2019 6:56 pm โดย prmindphp
วิธีการเขียน SQL เพื่อเปลี่ยนชื่อตาราง ในฐานข้อมูลเมื่อมีการเขียนชื่อตารางผิด
โดย Ittichai_chupol พ 25 ธ.ค. 2019 5:15 pm บอร์ด SQL Knowledge
0
28
พ 25 ธ.ค. 2019 5:15 pm โดย Ittichai_chupol
แก้ปัญหา ใช้ Python โอนย้ายไฟล์ข้ามเครื่อง ด้วย ftplib แล้วเจอ Connection timed out
โดย mindphp พ 25 ธ.ค. 2019 1:21 pm บอร์ด Python Knowledge
0
36
พ 25 ธ.ค. 2019 1:21 pm โดย mindphp
ตัวช่วยในคำนวณอัตราดอกเบี้ยสำหรับนักลงทุน
โดย prmindphp อ 24 ธ.ค. 2019 6:52 pm บอร์ด MindPHP News & Feedback
0
30
อ 24 ธ.ค. 2019 6:52 pm โดย prmindphp
วิธีการดึงกลุ่มของ phpbb มาสร้างเป็น listbox พร้อมเปลี่ยนชื่อกลุ่มตามภาษาที่กำหนด
โดย Ittichai_chupol อ 24 ธ.ค. 2019 6:35 pm บอร์ด PHP Knowledge
0
28
อ 24 ธ.ค. 2019 6:35 pm โดย Ittichai_chupol
R - ขั้นตอนการตรวจ สอบปัญหา ที่อาจจะเกิดขึ้น ตาม Systems Diagram
โดย mindphp อ 24 ธ.ค. 2019 12:12 pm บอร์ด MlineCRM Line + MD-CRM
0
2
อ 24 ธ.ค. 2019 12:12 pm โดย mindphp
ปฏิทินประจําปี 2563 มาในรูปแบบไซเบอร์ สำหรับคนสมัยใหม่ที่มีหัวคิดก้าวไกลเท่าทันเทคโนโลยี
โดย noppadonsk อ 24 ธ.ค. 2019 10:35 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
152
ส 04 ม.ค. 2020 4:38 am โดย mindphp
R - เพิ่ม Exception ตอน push ข้อมความ ไปที่ Line หรือ รับข้อความจาก Line ไม่ได้
โดย mindphp อ 24 ธ.ค. 2019 7:06 am บอร์ด MD-CRM - Tester
0
4
อ 24 ธ.ค. 2019 7:06 am โดย mindphp
B - เวลาใน Logs ไม่ตรง
โดย mindphp อ 24 ธ.ค. 2019 5:57 am บอร์ด MlineCRM Line + MD-CRM
0
3
อ 24 ธ.ค. 2019 5:57 am โดย mindphp
วางแผนเงินออมได้ง่ายๆ ด้วยโปรแกรมคำนวณหามูลค่าเงินในอนาคต
โดย prmindphp จ 23 ธ.ค. 2019 7:28 pm บอร์ด MindPHP News & Feedback
0
53
จ 23 ธ.ค. 2019 7:28 pm โดย prmindphp