การใช้งาน reCAPTCHA

April 2009 | By platoosom | PHP | Tags : , | อ่าน : 428

recaptcha

อ่านกันเสียก่อน

1. CAPTCHA คืออะไร

2. CAPTCHA – เอ็งเป็นมนุษย์ใช่บ่

3. มารู้จัก reCAPTCHA กันเถอะ

วันนี้ผมจะมาอธิบายการนำ reCAPTCHA ไปใช้ในเว็บท่านเพื่อกรองพวกสแปมทั้งหลายแหล่ วิธีการใช้งานนั้นแบ่งออกเป็น 3 ขั้นตอนหลักๆ คือ

1. Download library reCAPTCHA

2. ลงทะเบียนกับเว็บไซต์ http://recaptcha.net/ เพื่อขอ Public Key และ Private Key

3. เขียนโค้ด

เริ่มกันจ่ะ

1. คลิก Download library reCAPTCHA เพื่อดาวน์โหลดตัว reCAPTCHA

2. ขั้นตอนการลงทะเบียน เพื่อขอ Public Key และ Private Key

- เข้าไปที่ https://admin.recaptcha.net/accounts/signup/

- ป้อนรายละเอียดต่างๆในการลงทะเบียนให้เรียบร้อย แล้วกดปุ่ม Sign up Now!

- ป้อนชื่อเว็บไซต์ที่ท่านต้องการจะนำ reCAPTCHA ไปใช้ แล้วกดปุ่ม Create Key

- ท่านจะได้ Publick Key และ Private Key มา เป็นอันเสร็จกระบวนการขั้นตอนที่ 2

3. เขียนโค้ด

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
// Include reCAPTCHA ที่ดาวน์โหลดมา
require_once('recaptchalib.php');
 
// ใส่ Public Key และ Private Key ที่ได้จากการลงทะเบียน
$publickey = "6Lcq4AUAAAAAAFE0CUowWxxxxxxxxxxxxxxxxx";
$privatekey = "6Lcq4AUAAAAAAN9qoFEOxxxxxxxxxxxxxxxxxx";
 
$resp = null;
$error = null;
 
// ถ้าหน้านี้ถูกเรียกเพราะ User submit ฟอร์ม
if ($_POST["ispostback"]) {
		// ตรวจสอบค่าที่ป้อนใน reCAPTCHA มาว่าถูกต้องหรือเปล่า
        $resp = recaptcha_check_answer ($privatekey,
                                        $_SERVER["REMOTE_ADDR"],
                                        $_POST["recaptcha_challenge_field"],
                                        $_POST["recaptcha_response_field"]);
		// ถ้าถูกต้อง จะเขียนโค้ดเก็บข้อมูลลง database หรือจะทำอะไร ก็เขียนตรงนี้แหละ
        if ($resp->is_valid) {
                echo "คุณป้อนข้อมูล reCAPTCHA ถูกต้อง";
        } else {
		// ถ้าไม่ถูกต้อง เพราะอาจจะเป็นบอท ก็เขียนโค้ดเข้าไปตรงนี้
                echo $resp->error;
        }
}
?>
<html>
<body>
<form action="" method="post">
 
  <label for="username">Username</label>  :
  <input type="text" name="username" id="username">
 
  <label for="password">Password</label>  :
  <input type="text" name="password" id="password">
 
    <!-- แสดง ช่องให้ป้อน reCAPTCHA-->
    <?php echo recaptcha_get_html($publickey) ;?></p>
 
    <input name="ispostback" type="hidden" value="true">
    <input type="submit" value="submit" />
  </p>
</form>
</body>
</html>

ผลลัพธ์จากโค้ด

- recaptcha_get_html($publickey) คำสั่งนี้ไว้ใช้แสดงตัว reCAPTCHA โดยส่ง publickey เป็นพารามิเตอร์เข้าไป

- recaptcha_check_answer สำหรับตรวจสอบว่า User ป้อนข้อมูลที่ตัว reCAPTCHA แสดงไว้ ได้ถูกต้องหรือเปล่า โดยมีพารามิเตอร์ 4 ตัว ตัวที่ 1 คือ Private Key ส่วนอีก 3 ตัวท่านไม่ต้องเปลี่ยนแปลงใดๆ

บทความน่าสนใจ

  1. ป้องกันแสปมไม่ให้มาก่อกวนใจด้วย Cryptographp CAPTCHA
  2. เด็ดปีกแสปมด้วย Securimage CAPTCHA
  3. CAPTCHA คืออะไร
  4. CAPTCHA
  5. จัดการข้อมูลในฟอร์มด้วย .val()
Tags: ,

ผู้เขียน: วัชรเมธน์ ชิษณุคุปต์ ศรีเนธิโรทัย

เว็บไซต์ :http://www.select2web.com

งานเล็กๆก็ยิ่งใหญ่ได้ ถ้าอยู่ในที่ๆเหมาะสม

มี 27 ความเห็น ในบทความเรื่อง “การใช้งาน reCAPTCHA”

  1. กัน says:

    กำลังหาวิธีทำอยู่พอดีเลยครับ

  2. platoosom says:

    จะมีบทความการใช้งาน captcha ต่อเนื่องอีก 2-3 บทความครับ เขียนไว้แล้ว รอวันออก

  3. Limei says:

    ขอบคุณมากๆนะคะ เรางงมากเลยอ่ะ ใจดีจัง

  4. platoosom says:

    งงมากๆยังไงครับ

  5. Limei says:

    คือเรางงตั้งแต่เขียนโค๊ตอ่ะค่ะว่าแบบเราจะต้องเอาอะไรไปใส่ตรงไหน
    ของเราเป็นฟอรั่มอ่ะค่ะ
    แบบว่ายังไงดี ส่วนแต่ละส่วนในโค๊ตนั้นอ่ะค่ะเราจะต้องใส่ไปในส่วนไหนของสกินบ้างเช่นใส่ในที่โพสข้อความหรือยังไงเนี้ยค่ะ

    แต่โหลดตัวที่คุณให้ลิ้งไว้แล้ว ยังไงรบกวนอธิบายอีกหน่อยนะค้า
    เราทำเป็นแต่เว็บทั่วๆไปอ่ะค่ะ เลยมองภาพไม่ค่อยออก

    ขอบคุณนะค้า เบื่อมากสแปมเด็กๆเจอเข้าไปแย่เลย

  6. platoosom says:

    ฟอรั่มตัวไหนครับ ผมไม่แน่ใจนะครับว่าตัวฟอรั่มเองเขามี ปลั๊กอิน CAPTCHA ให้ใช้แล้วหรือยัง ยังไงบอกด้วยนะว่าฟอรั่มตัวไหน ผมจะได้หาข้อมูลให้ครับ

  7. Limei says:

    IPB2.3.2 ค่า ขอบคุณนะคะ

  8. Limei says:

    เหมือนจะเห็นเขียนถึงอยู่แต่ก็ทำไม่เป็นง่ะ

  9. platoosom says:

    ลองเข้าไปดูที่ระบบ Admin มองหาเมนู Tools and Settings -> Security and Privacy for the system to work.

    ลองดู เท่าที่ผมหาอ่านในกูเกิล เขาบอกว่าบอร์ดตัวนี้ติดตั้ง CAPTCHA มาให้แล้ว เข้าไปเปิดใช้ได้งานได้ที่ เมนูด้านบนที่บอก

    ผมก็ไม่เคยใช้บอร์ดตัวนี้ ถ้าหากว่าไม่มีหรือไม่เจอยังไง ถามอีกครั้งนะครับ

  10. Limei says:

    เจอฟังชั่นนี้ค่ะ แต่ว่ามันไม่ขึ้นอ่ะค่ะต้ยรงที่โพสน่ะ ไม่ทราบว่าต้องลงตัวอะไรอีกมัย ขอบคุณนะคะ

  11. platoosom says:

    มันมีตั้งค่าอะไรบ้างคับ ก็ลองตั้งค่ามันดู

  12. Limei says:

    มันขึ้นแบบนี้นะคะ
    http://ipbrc.sourceforge.net/reCAP.JPG
    แต่ว่าของเราไม่มีช่อง
    recaptcha public key และ recaptcha private key

  13. platoosom says:

    ดั๊มพ์หน้าตาที่เป็นของคุณ ให้ดูหน่อยได้มั้ยครับ อยากเห็นว่าเป็นอย่างไร เพราะอันที่จริงมันน่าจะมี

  14. platoosom says:

    ลองเปลี่ยนตัวเลือกตัวแรก Enable CAPTCHA ให้เป้น Advance สิครับ

  15. Limei says:

    เคยกดแล้วนะคะมันก้ไม่ขึ้นอ่ะค่ะ แต่ตอนนี้มันขึ้นตัวแคชช่าให้กรอกตอนโพสแต่มันไม่ได้บังคับกรอกอ่ะค่ะไม่กรอกก็โพสได้

  16. Limei says:

    แถมเซ้งอีก ลบกระทู้สแปมแล้วแบบกระทู้กฏเราหายไปทั้งๆที่เราไม่ได้ติ๊กเลยนะ งงมากอ่ะ ต้องตั้งใหม่

    ขอบคุณมากๆนะคะ แล้วก็ขอโทษที่กวนมาตลอดเลย แหะๆ

  17. platoosom says:

    มันจะมีตัวเลือกเพิ่มเติมด้านล่างอีก ลองดูให้ดีนะครับ เรื่องรบกวนนั้นไม่เป็นไรครับ ยินดีช่วยเต็มที่

  18. Limei says:

    เราดูๆแล้วตัวเลือกมันก็ไม่มีไรเปลี่ยนอ่ะค่ะ ช่วยบอกหน่อยได้มั้ยคะว่ามันควรเลือกอะไรบ้าง

    ขอบคุณนะค้า

  19. Bst says:

    จะเอามามาใส่ในเว็บบอร์ดก่อนโพสนะครับ จะเอาโค้ดมาใส่ลงที่ไหน

  20. platoosom says:

    เป็นเว็บบอร์ดที่เขียนขึ้นมาเอง หรือว่าเว็บบอร์ด ตัวไหนครับ ถ้าเป็นเว็บบอร์ดที่ให้ดาวน์โหลดฟรี เช่นพวก smf พวกนี้จะมีปลั๊กอินเกี่ยวกับ captcha ให้ใช้อยู่แล้ว ซึ่งอาจจะต้องอ่านรายละเอียดจาก เว็บไซต์ผู้ผลิต ครับ

  21. aomna says:

    ถ้า เว็บไม่ได้จด โดเมนเนม ใช้ได้ไหมครับ
    เห็นตอนลงทะเบียนให้ใส่เฉพาะโดเมนเนม อะครับ

  22. platoosom says:

    สำหรับ recaptcha มันจะใช้ได้กับโดเมนที่จดทะเบียนนะครับ
    ยังมี CAPTCHA ตัวอื่นให้ใช้อีกหลายตัวครับ
    เด็ดปีกแสปมด้วย Securimage CAPTCHA
    ป้องกันแสปมไม่ให้มาก่อกวนใจด้วย Cryptographp CAPTCHA

  23. hotels says:

    ดีเลยคับ กะลังหาวิธีอยู่เลย

  24. sitti says:

    ขอบคุณครับ หาอยู่พอดีครับ

  25. Anonymous says:

    ไม่รู้คนสอนห่วย หรือว่า คนอ่านโง่ ถึงใช้แค่นี้ก็ไม่เป็น เหอๆ

  26. limei says:

    โอ้วว ไม่ได้ทำต่อแล้ว แหะๆ มาเจอเข้า ลืมไปแล้วนะเนี่ยแอบตกใจความเห็นบนทำไมแรงจัง
    เป็นบอร์ดของไอพีบีแหล่ะค่า แบบอัพโหลดขึ้นเว็บเอง แต่เดี๋ยวเราจะเปลี่ยนเป็นเอสเอ้มเอฟและ

แสดงความเห็น

ชื่อ *
Email *
Website
ความคิดเห็น