อ่านกันเสียก่อน
2. CAPTCHA – เอ็งเป็นมนุษย์ใช่บ่
วันนี้ผมจะมาอธิบายการนำ 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 ตัวท่านไม่ต้องเปลี่ยนแปลงใดๆ
กัน says:
22/04/2552 at 22/04/2552
กำลังหาวิธีทำอยู่พอดีเลยครับ
administrator says:
22/04/2552 at 22/04/2552
จะมีบทความการใช้งาน captcha ต่อเนื่องอีก 2-3 บทความครับ เขียนไว้แล้ว รอวันออก
Limei says:
05/05/2552 at 05/05/2552
ขอบคุณมากๆนะคะ เรางงมากเลยอ่ะ ใจดีจัง
administrator says:
05/05/2552 at 05/05/2552
งงมากๆยังไงครับ
Limei says:
06/05/2552 at 06/05/2552
คือเรางงตั้งแต่เขียนโค๊ตอ่ะค่ะว่าแบบเราจะต้องเอาอะไรไปใส่ตรงไหน
ของเราเป็นฟอรั่มอ่ะค่ะ
แบบว่ายังไงดี ส่วนแต่ละส่วนในโค๊ตนั้นอ่ะค่ะเราจะต้องใส่ไปในส่วนไหนของสกินบ้างเช่นใส่ในที่โพสข้อความหรือยังไงเนี้ยค่ะ
แต่โหลดตัวที่คุณให้ลิ้งไว้แล้ว ยังไงรบกวนอธิบายอีกหน่อยนะค้า
เราทำเป็นแต่เว็บทั่วๆไปอ่ะค่ะ เลยมองภาพไม่ค่อยออก
ขอบคุณนะค้า เบื่อมากสแปมเด็กๆเจอเข้าไปแย่เลย
administrator says:
06/05/2552 at 06/05/2552
ฟอรั่มตัวไหนครับ ผมไม่แน่ใจนะครับว่าตัวฟอรั่มเองเขามี ปลั๊กอิน CAPTCHA ให้ใช้แล้วหรือยัง ยังไงบอกด้วยนะว่าฟอรั่มตัวไหน ผมจะได้หาข้อมูลให้ครับ
Limei says:
06/05/2552 at 06/05/2552
IPB2.3.2 ค่า ขอบคุณนะคะ
Limei says:
06/05/2552 at 06/05/2552
เหมือนจะเห็นเขียนถึงอยู่แต่ก็ทำไม่เป็นง่ะ
administrator says:
06/05/2552 at 06/05/2552
ลองเข้าไปดูที่ระบบ Admin มองหาเมนู Tools and Settings -> Security and Privacy for the system to work.
ลองดู เท่าที่ผมหาอ่านในกูเกิล เขาบอกว่าบอร์ดตัวนี้ติดตั้ง CAPTCHA มาให้แล้ว เข้าไปเปิดใช้ได้งานได้ที่ เมนูด้านบนที่บอก
ผมก็ไม่เคยใช้บอร์ดตัวนี้ ถ้าหากว่าไม่มีหรือไม่เจอยังไง ถามอีกครั้งนะครับ
Limei says:
07/05/2552 at 07/05/2552
เจอฟังชั่นนี้ค่ะ แต่ว่ามันไม่ขึ้นอ่ะค่ะต้ยรงที่โพสน่ะ ไม่ทราบว่าต้องลงตัวอะไรอีกมัย ขอบคุณนะคะ
administrator says:
07/05/2552 at 07/05/2552
มันมีตั้งค่าอะไรบ้างคับ ก็ลองตั้งค่ามันดู
Limei says:
07/05/2552 at 07/05/2552
มันขึ้นแบบนี้นะคะ
http://ipbrc.sourceforge.net/reCAP.JPG
แต่ว่าของเราไม่มีช่อง
recaptcha public key และ recaptcha private key
administrator says:
07/05/2552 at 07/05/2552
ดั๊มพ์หน้าตาที่เป็นของคุณ ให้ดูหน่อยได้มั้ยครับ อยากเห็นว่าเป็นอย่างไร เพราะอันที่จริงมันน่าจะมี
Limei says:
08/05/2552 at 08/05/2552
http://i300.photobucket.com/albums/nn13/dtthaifans/captcha.jpg
นี่ค่ะ
administrator says:
09/05/2552 at 09/05/2552
ลองเปลี่ยนตัวเลือกตัวแรก Enable CAPTCHA ให้เป้น Advance สิครับ
Limei says:
11/05/2552 at 11/05/2552
เคยกดแล้วนะคะมันก้ไม่ขึ้นอ่ะค่ะ แต่ตอนนี้มันขึ้นตัวแคชช่าให้กรอกตอนโพสแต่มันไม่ได้บังคับกรอกอ่ะค่ะไม่กรอกก็โพสได้
Limei says:
11/05/2552 at 11/05/2552
แถมเซ้งอีก ลบกระทู้สแปมแล้วแบบกระทู้กฏเราหายไปทั้งๆที่เราไม่ได้ติ๊กเลยนะ งงมากอ่ะ ต้องตั้งใหม่
ขอบคุณมากๆนะคะ แล้วก็ขอโทษที่กวนมาตลอดเลย แหะๆ
administrator says:
11/05/2552 at 11/05/2552
มันจะมีตัวเลือกเพิ่มเติมด้านล่างอีก ลองดูให้ดีนะครับ เรื่องรบกวนนั้นไม่เป็นไรครับ ยินดีช่วยเต็มที่
Limei says:
12/05/2552 at 12/05/2552
เราดูๆแล้วตัวเลือกมันก็ไม่มีไรเปลี่ยนอ่ะค่ะ ช่วยบอกหน่อยได้มั้ยคะว่ามันควรเลือกอะไรบ้าง
ขอบคุณนะค้า
Bst says:
06/06/2552 at 06/06/2552
จะเอามามาใส่ในเว็บบอร์ดก่อนโพสนะครับ จะเอาโค้ดมาใส่ลงที่ไหน
administrator says:
06/06/2552 at 06/06/2552
เป็นเว็บบอร์ดที่เขียนขึ้นมาเอง หรือว่าเว็บบอร์ด ตัวไหนครับ ถ้าเป็นเว็บบอร์ดที่ให้ดาวน์โหลดฟรี เช่นพวก smf พวกนี้จะมีปลั๊กอินเกี่ยวกับ captcha ให้ใช้อยู่แล้ว ซึ่งอาจจะต้องอ่านรายละเอียดจาก เว็บไซต์ผู้ผลิต ครับ
aomna says:
11/06/2552 at 11/06/2552
ถ้า เว็บไม่ได้จด โดเมนเนม ใช้ได้ไหมครับ
เห็นตอนลงทะเบียนให้ใส่เฉพาะโดเมนเนม อะครับ
administrator says:
11/06/2552 at 11/06/2552
สำหรับ recaptcha มันจะใช้ได้กับโดเมนที่จดทะเบียนนะครับ
ยังมี CAPTCHA ตัวอื่นให้ใช้อีกหลายตัวครับ
เด็ดปีกแสปมด้วย Securimage CAPTCHA
ป้องกันแสปมไม่ให้มาก่อกวนใจด้วย Cryptographp CAPTCHA
hotels says:
18/07/2552 at 18/07/2552
ดีเลยคับ กะลังหาวิธีอยู่เลย
sitti says:
26/08/2552 at 26/08/2552
ขอบคุณครับ หาอยู่พอดีครับ
Anonymous says:
14/12/2552 at 14/12/2552
ไม่รู้คนสอนห่วย หรือว่า คนอ่านโง่ ถึงใช้แค่นี้ก็ไม่เป็น เหอๆ
limei says:
18/03/2553 at 18/03/2553
โอ้วว ไม่ได้ทำต่อแล้ว แหะๆ มาเจอเข้า ลืมไปแล้วนะเนี่ยแอบตกใจความเห็นบนทำไมแรงจัง
เป็นบอร์ดของไอพีบีแหล่ะค่า แบบอัพโหลดขึ้นเว็บเอง แต่เดี๋ยวเราจะเปลี่ยนเป็นเอสเอ้มเอฟและ
สมชาย says:
28/01/2554 at 28/01/2554
มันต้องมีวิธีเซตแน่นอนครับ ผมใช้ phpBB ตอนแรกทำไงเจ้าตัวcaptcha ก็ไม่ขึ้น หาตั้งนานจนเปลี่ยนเป็นรุ่น 3.8 ถึงเซตให้มันขึ้นมาให้กรอก captcha ได้ ก่อนนั้นเจ้าบอทตัวแสบมาโพสต์เต็มกระดานไปหมด บางวันรูปโป๊เต็มหมดต้องไล่ลบไล่บล็อก เหนื่อย ตอนนี้ไม่มีแล้ว รวมถึงคนก็ไม่ค่อยเข้ามาเลย :) ..
สมชาย says:
28/01/2554 at 28/01/2554
ขอเพิ่มอีกนิด สำหรับ phpBB มันจะต้องกำหนดกฎของบอร์ดก่อนด้วยว่าใครสามารถใช้บอร์ดได้ คนทั่วไปเขียนกระทู้ได้ใหม หรือต้องสมัครสมาชิกก่อน สมัครแล้วใช้บอร์ดได้เลย หรือสมัครแล้วต้องไปยืนยันอีเมล์ด้วยตัวเอง หรือรอแอดมินยืนยันให้ อะไรประมาณนี้ละครับ ถ้าตั้งกฎว่าคนทั่วไปเขียนบอร์ดได้ เราก็ต้องเลือกให้มันมี captcha ขึ้นมาเพื่อกรองสิ่งที่ไม่ใช่คน :)
PoJi says:
18/05/2554 at 18/05/2554
คือเราจะทำฟอมสมัครสมาชิกค่ะ แล้วใส่ recaptcha ไปแล้ว ใส่อักษรภาพผิด แต่ัมันก็ยังสมัครได้อะค่ะ ไม่ทราบว่าต้องทำยังไงให้ไอตัวสมัครสมาชิกเช็คก่อนว่าใส่รหัสภาพถูกแล้ว