ป้องกัน spam ด้วย captcha คำถาม ทางคณิตศาสตร์ อย่างง่าย

08 June 2010

PHP Code ตัวอย่าง
 

<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>php question verify</title>
</head>
 
<body>
<?php
$_SESSION['num_to_check'][0]=rand(1,9);
$_SESSION['num_to_check'][1]=rand(1,9);
?>
<form id="form1" name="form1" method="post" action="">
  <div id="verify_math">
  <span class="digital" style="background-position:<?=($_SESSION['num_to_check'][0]*-30)?>px 0px;"></span>
  <span>+</span>
  <span class="digital" style="background-position:<?=($_SESSION['num_to_check'][1]*-30)?>px 0px;"></span>
  <span>=</span>
  <span>
  <input name="i_verify" type="text" id="i_verify" maxlength="2" />
</span>
</div>
<br />
<br />
<input type="submit" name="button2" id="button2" value="Submit" />
</form>
 
</body>
</html>

CSS จัดการ Captcha

<style type="text/css">
#verify_math{
	display:block;
	height:21px;	
}
#verify_math span{
	display:block;
	height:21px;	
	width:30px;
	position:relative;
	float:left;
	text-align:center;
	line-height:20px;
	color:#000;
}
#verify_math span.digital{
	background:url(images/digi_img.jpg) left top no-repeat;	
}
#i_verify{
	position:relative;
	height:15px;	
	width:35px;	
	text-align:center;
	padding:0;
	margin:0;
	font-size:15px;
	font-weight:bold;
	font-family:Tahoma, Geneva, sans-serif;
}
</style>

PHP Code หน้าตรวจสอบ
 

<?php
session_start();
if($_POST['button2']){
	if(isset($_POST['i_verify']) && $_POST['i_verify']==@array_sum($_SESSION['num_to_check']) && $_POST['i_verify']>0 && trim($_POST['i_verify'])!=""){
		echo "<span style="color:green;">Right</span>";
		$_SESSION['num_to_check'][0]=rand(1,9);
		$_SESSION['num_to_check'][1]=rand(1,9);
		exit;
	}else{
		echo "<span style="color:red;">Wrong</span>";
		$_SESSION['num_to_check'][0]=rand(1,9);
		$_SESSION['num_to_check'][1]=rand(1,9);		
		exit;	
	}
}
?>

ตัวอย่าง

http://www.ninenik.com/demo/php_question_verify.php

คลิกขวาเลือก save รูปนี้ไว้ใช้งาน
 








บทความในหมวดที่่น่าสนใจ อื่นๆ PHP Learning

03 Apr 09 ง่ายๆ กับการลดช่องว่างในข้อความด้วย php อ่าน 1641 29 Oct 08 ใช้ php เข็ค javascript ว่ามีการเปิดใช้ หรือ enable หรือไม่ อ่าน 1626 17 Jun 10 สร้างฟังก์ชัน ตรวจสอบ การเข้าเว็บไซต์ ผ่านมือถือ ด้วย php อ่าน 1589 31 Aug 10 เทคนิค php ใช้ fgets และ javascript วนลูป loop อ่านไฟล์ ขนาดใหญ่ อ่าน 1583 14 Dec 10 แนะนำ php ip 2 country สำหรับเช็ค ip ว่ามาจากประเทศอะไร อ่าน 1564 23 Jun 11 การสร้าง active เมนู อย่างง่าย ด้วย css และ php อ่าน 1550 25 Oct 08 สร้างฟังก์ชันการหา whois เบื้องต้นด้วย php อย่างง่าย อ่าน 1416 22 Oct 10 สร้าง php ฟังก์ชัน ค้นหาค่าในตัวแปร array อย่างง่าย อ่าน 1403 04 Dec 09 จัดการ Directory สร้าง ลบ เปลี่ยนชื่อ กำหนด permission ผ่าน FTP function ด้วย PHP อ่าน 1386 10 Feb 10 ประยุกต์ สร้าง FTP Function สำหรับการจัดการไฟล์ผ่าน FTP Protocal อ่าน 1375 25 Sep 08 เพิ่มข้อความหน้าหรือหลังตัวเลขหรือข้อความด้วยฟังก์ชัน str_pad อ่าน 1346 03 Feb 11 การใช้งาน character classes ใน Regular Expressions ของ PHP อ่าน 1244 26 Mar 10 ความแตกต่าง ระหว่าง ฟังก์ชัน strstr กับ strrchr และ การประยุกต์ ใช้งาน อ่าน 1230 28 May 10 แสดง การแจ้งเตือน ให้เปิด หรือ บันทึกไฟล์ที่ดาวน์โหลด ด้วย php อ่าน 1201 18 Mar 11 ทบทวน htaccess สำหรับ ให้ url เว็บมี www ด้านหน้าเสมอ อ่าน 1187

บทความคนเข้าอ่านวันนี้

25 Sep 08 กรอกข้อมูลได้เฉพาะตัวเลข อ่าน 3675 13 Oct 10 สร้างเส้นทาง จากการ คลิกกำหนด waypoints จุดผ่านเส้นทาง ใน google map อ่าน 1987 18 Mar 11 ทบทวน htaccess สำหรับ ให้ url เว็บมี www ด้านหน้าเสมอ อ่าน 1187 04 Nov 09 ประยุกต์สร้าง pdf ไฟล์ จาก tcpdf class ด้วย php รองรับภาษาไทย อ่าน 5193 21 Jul 10 เทคนิค การเพิ่ม ลบ แถว ในตาราง รายการข้อมูล ด้วย jQuery อย่างง่าย อ่าน 4562 14 Sep 10 การดึงข้อมูล จากฐานข้อมูล สร้าง xml ไฟล์ ด้วย php อ่าน 3920 22 Nov 08 ซ่อนและแสดงเนื้อหาแบบหีบเพลง (accordion) ด้วย jquery อย่างง่าย อ่าน 4636 02 Apr 11 การอ้างอิง object ในหน้าหลัก จากหน้า popup ด้วย jQuery อย่างง่าย อ่าน 2513 17 Aug 09 สร้างเมนู เทคนิค ลูกตาปลา ด้วย jQuery อย่างง่าย อ่าน 5555 04 Nov 10 การสร้าง json ไฟล์ จากฐานข้อมูล ด้วย php และการใช้งานด้วย jQuery getJSON() อ่าน 3164 07 Sep 10 ใช้ ckeditor กับ filemanager ด้วย php รองรับ ฟังก์ชัน javascript อ่าน 3407 04 Oct 08 SQL คืออะไร อ่าน 7367 12 Sep 10 จัดรูปแบบ NavigationControlOptions ใน Google Map อ่าน 1613 25 Sep 08 ปิดหน้า Browser โดยไม่ต้องมีข้อความยืนยัน อ่าน 3649 25 Sep 08 มารู้จัก effect ของ jquery อย่างง่าย ตอนที่ 3 อ่าน 3704 25 Sep 08 การกำหนด selectors ด้วย jQuery แบบตัวกรอง Attribute อ่าน 2739 10 Sep 10 ค้นหา พิกัด ค่า latitude และ longitude ใน Google Map จากฃื่อสถานที่ อ่าน 5610 25 Sep 08 แสดง Code สวยๆ Style Google ด้วยเครื่องมือที่เรียกว่า SyntaxHighlighter อ่าน 5399 07 Sep 11 นาฬิกาเวลา จาก server อย่างง่าย อ่าน 858 25 Sep 08 PHP MySQL connecting script and function อ่าน 2370
จำนวนผู้เยี่ยมชม 777878
คน 2012 © Copyright ninenik.com. All rights reserved.