จะเขียน php autocomplete แบบนี้ต้องเขียนอย่างไร

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา จะเขียน php autocomplete แบบนี้ต้องเขียนอย่างไร

จะเขียน php autocomplete แบบนี้ต้องเขียนอย่างไร

 เหมือนกับเว็บนี้ครับ

http://thaiopensource.org/

ที่สามารถค้นหาแล้วสามารถลิงค์ไปหน้าเว็บจากตัว autocomplete เอง

จะต้องเขียนอย่างไรครับ 

คือผมจะเขียน autocomplete ที่ใช้ฐานข้อมูล MySQL นะครับ

ขอบคุณครับ



Kanin2604 07-11-2011 08:38:06

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1

 https://www.ninenik.com/forum_view_807_1.html

ไว้เป็นแนวทาง



ninenik 07-11-2011
 ความคิดเห็นที่ 2

 ผมลองเขียนสคิปต์จาก https://www.ninenik.com/content.php?arti_id=209 แต่มันไม่ยอมทำงาน ผมเลยเอาสิคปต์มาให้ดูเพื่อพอช่วยแก้จุดผิดให้มันทำงานได้ครับ

ไฟล์ gdata.php

<?php
header("Content-type:text/html; charset=UTF-8");        
header("Cache-Control: no-store, no-cache, must-revalidate");       
header("Cache-Control: post-check=0, pre-check=0", false);       
// เชื่อมต่อฐานข้อมูล
$link=mysql_connect("localhost","root","1234") or die("error".mysql_error());
mysql_select_db("autosearch",$link);
mysql_query("set character set utf8");
 
$q = urldecode($_GET["q"]);
$pagesize = 50; // จำนวนรายการที่ต้องการแสดง
$table_db="db_search"; // ตารางที่ต้องการค้นหา
$find_field="searchde"; // ฟิลที่ต้องการค้นหา
$sql = "select * from db_search where locate('$q', $find_field) > 0 order by locate('$q', $find_field), $find_field limit $pagesize";
$results = mysql_query($sql);
while ($row = mysql_fetch_array( $results )) {
	$id = $row["id"]; // ฟิลที่ต้องการส่งค่ากลับ
	$name = ucwords( strtolower( $row["searchde"] ) ); // ฟิลที่ต้องการแสดงค่า
	// ป้องกันเครื่องหมาย '
	$name = str_replace("'", "'", $name);
	// กำหนดตัวหนาให้กับคำที่มีการพิมพ์
               $link = ucwords( strtolower( $row["website"] ) ); // ฟิลที่ต้องการแสดงค่า
	// ป้องกันเครื่องหมาย '
	$link = str_replace("'", "'", $link);
	$display_name = preg_replace("/(" . $q . ")/i", "<b>$1</b>", $name);
	echo "<li onselect="this.setText('$name').setValue('$id');"><a href="$link">$display_name</a></li>";
}
mysql_close();
?>

 



kanin2604 07-11-2011 17:58






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ