เทคนิค php ค้นหาข้อมูล และ hilight กรณี keyword มากกว่า 1 ค่า

28 November 2009

css ของข้อความที่ทำ hilight

<style type="text/css">
span.iHilight{ /* กำหนดรูปแบบ css ของข้อความที่ทำ hilight */
	color:#DA0044;
	background-color:#FFFFCC;
}
</style>

PHP code แนวทางสำหรับนำไปประยุกต์ใช้งาน

<?php
if($_GET['q'] && $_GET['q']!=""){
	$any_keyword=explode(" ",$_GET['q']); // แยกค่า keyword แต่ละตัวออกจากข้อความ หรือประโยคที่ค้นหา
	$patterns=array(); // ตัวแปร array สำหรับเก็บค่า รูปแบบสำหรับค้นหา
	$replacements=array(); // ตัวแปร array สำหรับเก็บค่า รูปแบบสำหรับแทนที่
	$num_keyword=count($any_keyword); // หาค่าจำนวน keyword
	$qMore=""; // ตัวแปร สำหรับเก็บค่า เงื่อนไขคำสั่ง sql
	if($num_keyword>0){ // ตรวจสอบค่า keyword ว่ามากกว่า 0 หรือไม่
		foreach($any_keyword as $key=>$value){ // วนลูปสำหรับกำหนดค่า ตัวแปร ต่างๆ
			$qMore.=" arti_topic like '%".trim($value)."%' or "; // กำหนดรูปแบบสำหรับเงื่อนไขคำสั่ง sql
			$patterns[$key]="/".trim($value)."/i"; // กำหนดรูปแบบสำหรับค้นหา
			$replacements[$key]="<span class=iHilight>".trim($value)."</span>";  // กำหรดรูปแบบสำหรับแทนที่
		}
		$qMore=substr($qMore,0,-3); // ตัดส่วนท้ายของคำสั่ง sql ( ตัด or ส่วนท้ายคำสั่ง sql )
	}
	// คำสั่ง sql สำหรับแสดงข้อมูล
	$q="SELECT * FROM `article` WHERE $qMore   ";
	$qr=mysql_query($q);
	while($rs=mysql_fetch_array($qr)){
		$iTopic=preg_replace($patterns, $replacements, $rs['arti_topic']);  // hilight คำที่ค้นหาในรายการที่แสดง
	}	
}	
?>







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

15 Feb 09 ดึงข่าว rss มาใช้ในเว็บเราได้อย่างง่ายดายด้วย php อ่าน 3615 13 Jul 10 วิธี load xml ไฟล์ และ แบ่งหน้า ด้วย php อย่างง่าย อ่าน 3603 03 Nov 08 เก็บ HTML ไว้ในตัวแปร PHP อย่างง่ายด้วยฟังก์ชัน ob_start() อ่าน 3386 07 Aug 10 ใช้ css แบ่งเนื้อหา เป็นคอลัมน์ พร้อมแบ่งหน้า ด้วย php อ่าน 3360 18 Sep 10 ดึงข้อมูล จากฐานข้อมูล สร้าง รายการเครือข่าย แบบ tree ด้วย php อ่าน 3332 14 Feb 09 ข้อแตกต่างระหว่าง mysql_pconnect กับ mysql_connect อ่าน 3308 05 Nov 09 เช็ค บราวเซอร์ Browser ด้วย php อย่างง่าย อ่าน 3266 21 Dec 09 ใช้งาน fckeditor WYSIWYG editor สำหรับเว็บบอร์ด หรืออื่นๆ อย่างง่าย อ่าน 3212 12 Nov 10 ประยุกต์ php ฟังก์ชัน time() อย่างง่าย กับการแสดง เงื่อนไข ช่วงเวลา อ่าน 3201 13 May 09 แก้ไขการตัดข้อความด้วย substrใน php แล้วมีรูปสี่เหลี่ยม อ่าน 3172 05 Jun 09 สร้างฟังก์ชัน แสดงการสุ่มเลือกตัวอักษร random ด้วย php อย่างง่าย อ่าน 3032 23 Jun 11 การสร้าง active เมนู อย่างง่าย ด้วย css และ php อ่าน 2954 10 Oct 10 การใช้งาน stream.publish ของ facebook Old REST API ด้วย php sdk อ่าน 2951 03 Sep 10 จัดรูปแบบ url ลิ้งค์ link ด้วย เทคนิค php ได้อย่างง่าย อ่าน 2928 07 Oct 10 การใช้ php sdk เรียกใช้งาน graph api ใน facebook แบบระบุส่วนของข้อมูล อ่าน 2926

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

04 Aug 09 การส่งข้อมูลแบบ post ด้วย ajax ของ jquery อ่าน 11026 25 Sep 08 รู้จักฟังก์ชันของ jQuery ในการเรียกใช้ Attribute อ่าน 3797 25 Sep 08 ข้อความ Text การจัดการเกี่ยวกับขนาดและรูปร่างของข้อความ อ่าน 4106 12 Nov 08 กำหนด permission ไฟล์หรือโฟลเดอร์ด้วยฟังก์ชัน FTP ใน PHP อ่าน 2137 22 Oct 10 สร้าง php ฟังก์ชัน ค้นหาค่าในตัวแปร array อย่างง่าย อ่าน 1753 06 Jun 11 แนวทางการกำหนด expired header ให้กับรูปภาพ ด้วย php อย่างง่าย อ่าน 1223 07 Dec 09 การเลื่อน scrollbar อัตโนมัติตาม การเลื่อนขึ้นลง ของ mouse ด้วย jQuery อ่าน 3416 25 Sep 08 รู้จักฟังก์ชันสำหรับการ random อ่าน 2902 01 Nov 10 ประยุกต์ ฟังก์ชัน animate ใน jQuery เลื่อน scroll หน้าเพจ อ่าน 3147 05 Jul 09 สร้างฟังก์ชัน autocomplete ให้ใช้งานแบบง่าย ด้วย ajax อ่าน 15300 22 Sep 11 แนวทาง การเลื่อนแล้ว fixed ตำแหน่งเนื้อหาที่ต้องการ ด้วย jQuery อ่าน 2024 19 Oct 08 คำสั่ง SQL COUNT อ่าน 7773 13 Sep 10 ประยุกต์ สร้างเครื่องมือ ค้นหา พิกัด จากชื่อสถานที่ จำนวนมาก ใน google map อ่าน 2371 25 Sep 08 javasdcript กับการเข้ารหัส encoding และการถอดรหัส decoding อ่าน 4243 25 Sep 08 ฟังก์ชั่นเกี่ยวกับ วันที่ เวลา ใน javascript อ่าน 8026 03 Nov 10 การเพิ่ม ลบ แก้ไข แบ่งหน้า ข้อมูล ด้วย jquery ajax อย่างง่าย อ่าน 7029 25 Sep 08 การกำหนด selectors ด้วย jQuery แบบตัวกรองพื้นฐาน อ่าน 2955 08 Jun 09 วิธีการสร้าง preloading images โหลดรูปภาพ ด้วย javascript อย่างง่าย อ่าน 7190 22 Nov 08 ซ่อนและแสดงเนื้อหาแบบหีบเพลง (accordion) ด้วย jquery อย่างง่าย อ่าน 5297 04 Nov 10 การสร้าง json ไฟล์ จากฐานข้อมูล ด้วย php และการใช้งานด้วย jQuery getJSON() อ่าน 4532
จำนวนผู้เยี่ยมชม 892677
คน 2012 © Copyright ninenik.com. All rights reserved.