SMF – การติดตั้ง CAPTCHA ร่วมกับ SMF Forum เพื่อป้องกัน Spam Posting

การติดตั้ง CAPTCHA ร่วมกับ SMF Forum เพื่อป้องกัน Spam Posting

[1] ดาวน์โหลดไฟล์ captcha.zip จากไฟล์แนบด้านล่างของกระทู้

แตกไฟล์ออกแล้วอับโหลดโฟรเดอร์ captcha ไปยังเว็บเซิร์ฟเวอร์

[2] ดาวน์โหลดไฟล์ ./Sources/Post.php

ค้นหาข้อความ
[php]
if (empty($modSettings[‘guest_post_no_email’]))
{
if (!isset($_REQUEST[’email’]) || $_REQUEST[’email’] == ”)
$context[‘post_error’][‘no_email’] = true;
elseif (preg_match(‘~^[0-9A-Za-z=_+\-/][0-9A-Za-z=_\’+\-/\.]*@[\w\-]+(\.[\w\-]+)*(\.[\w]{2,6})$~’, stripslashes($_REQUEST[’email’])) == 0)
$context[‘post_error’][‘bad_email’] = true;
}
[/php]
เพิ่มโค๊ดโด๊ดด้านล่างนี้ต่อท้ายบรรทัด } (Enter 1 ครั้ง)
[php]
if($_SESSION[‘security_code’]!=$_POST[‘secret_code’]||empty($_POST[‘secret_code’])) { // Check
$secret_code_chk = true;
$context[‘post_error’][‘guest_no_security_code’] = true;
}
[/php]
ค้นหาข้อความ
[php]
// Now make sure this email address is not banned from posting.
isBannedEmail($_POST[’email’], ‘cannot_post’, sprintf($txt[‘you_are_post_banned’], $txt[28]));
[/php]
เพิ่มโค๊ดโด๊ดด้านล่างนี้ต่อท้ายบรรทัด } (Enter 1 ครั้ง)
[php]
if($_SESSION[‘security_code’]!=$_POST[‘secret_code’]||empty($_POST[‘secret_code’])) { // Check
$post_errors[] = ‘guest_no_security_code’;
}
[/php]

[3] ดาวน์โหลดไฟล์ ./Themes/default/languages/Errors.english.php

เพิ่มโค๊ดข้างล่างนี้ที่ด้านล่างสุด (ก่อน ?>)
[php]
$txt[‘error_guest_no_security_code’] = ‘Sorry, you enter the ID code is incorrect.’;
[/php]
[4] ดาวน์โหลดไฟล์ ./Themes/default/Post.template.php

ค้นหาข้อความ
[php]
// If the admin has enabled the hiding of the additional options – show a link and image for it.
if (!empty($settings[‘additional_options_collapsable’]))
[/php]
แล้วเพิ่มโค๊ดด้านล่างนี้ ใว้ก่อนโค๊ดด้านบน
[php]
if (isset($context[‘name’]) && isset($context[’email’]))
{
echo ‘ 

Security Code*:
<a href="captcha/captcha.php?width=100&amp;height=40&amp;characters=5" target="a">
<img src="captcha/refresh.gif" border="0" alt="" width="13" height="13" /></a>
Type the characters you see in the picture

<input name="secret_code" type="text" />’;
}

[/php]
[5] ดาวน์โหลดไฟล์ index.php ของเว็บบอร์ดนะครับ ให้เข้าไปใส่โค๊ด

ค้นหา
[php]
<!–?php </div–>
[/php]
(Enter 1 ครั้งแล้วเพิ่มโค๊ด)
[php]
session_start();
[/php]

Link of Reference – http://bc46.com/forum/index.php?topic=940.0

Leave a Reply

Scroll to top
X