Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ทำ autocompaelt ดึงข้อมูล json ตัวอย่างจาก http://easyautocomplete.com/ run ไม่ออก ครับ



 

ทำ autocompaelt ดึงข้อมูล json ตัวอย่างจาก http://easyautocomplete.com/ run ไม่ออก ครับ

 



Topic : 123961



โพสกระทู้ ( 316 )
บทความ ( 0 )



สถานะออฟไลน์




โค๊ดทั้งหมดครับ

test_data.php
Code (PHP)
<!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>Untitled Document</title>
<script type="text/javascript">
var options = {

  url: "test_data1.php",

  getValue: "name",

  list: {	
    match: {
      enabled: true
    }
  },

  theme: "square"
};

$("#countries").easyAutocomplete(options);
</script>
</head>

<body>

<input id="countries"/>
</body>

</html>



test_data1.php
//ไฟล์นี้ดึงข้อมูลจาก db มาปกติ ครับ

Code (PHP)
 <?php
include("conen.php");	
	//$objConnect = mysql_connect("localhost","root","") or die(mysql_error());
	//$objDB = mysql_select_db("test_db");
	$strSQL = "select   id   from   `table_A`    
	group by id   order by  id   limit 0,10";
	$objQuery = mysql_query($strSQL) or die (mysql_error());
	$intNumField = mysql_num_fields($objQuery);
	$resultArray = array();
	while($obResult = mysql_fetch_array($objQuery))
	{
		$arrCol = array();
		for($i=0;$i<$intNumField;$i++)
		{
			$arrCol[mysql_field_name($objQuery,$i)] = $obResult[$i];
		}
		array_push($resultArray,$arrCol);
	}
	
	mysql_close($objConnect);
	
	echo json_encode($resultArray);
?>









Tag : PHP, JavaScript, Action Script, Ajax, jQuery









ประวัติการแก้ไข
2016-07-22 11:55:41
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-07-22 11:54:23 By : rock_rock View : 3394 Reply : 10
 

 

No. 1



โพสกระทู้ ( 279 )
บทความ ( 0 )



สถานะออฟไลน์


ขอดู JSON ที่ echo ออกมาหน่อยครับ

echo json_encode($resultArray);






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-22 14:00:23 By : thesin18598
 


 

No. 2



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


อินครูดไฟล์มาครบหรือเปล่า

url: "test_data1.php", เท่าที่จำได้ และดูจากตัวอยาง ไฟล์ที่ดึงมาใช้งานต้องเป็น .json เท่านั้นนะ

ผมเลยแก้แบบนี้

ใส่ไว้ในที่เดียวกับไฟล์
var options1 = {
   data: [<?php 
         $teacher = $mysql->queryResult("SELECT * FROM `tb_teacher` ORDER BY `teacherID`");
          while($rs = $teacher->fetch()){
          ?>{"character1": "<?php echo $rs['teacherName']; ?>","teacherID": "<?php echo $rs['teacherID']; ?>"},
          <?php } ?>
          ],
  getValue: "character1",
  list: {
    onSelectItemEvent: function() {
    var value = $("#basics1").getSelectedItemData().teacherID;
          $("#teacher1").val(value).trigger("change");
      },
  match: {
      enabled: true
    }
      }
};
$("#basics1").easyAutocomplete(options1);


ส่วนอันนี้เป็น input เพิ่มลูกเล่นอะไรนิดหน่อย
<div class="form-group">
<label>ประธานกรรมการควบคุมงานนิพนธ์</label>       
<input class="form-control"  id="basics1" name="basics1">
 <input id="teacher1" name="teacher1" type="hidden" />
<hr>
 </div>



ประวัติการแก้ไข
2016-07-22 14:19:29
2016-07-22 14:24:02
2016-07-22 14:24:52
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-22 14:17:34 By : apisitp
 

 

No. 3



โพสกระทู้ ( 3,750 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 2 เขียนโดย : apisitp เมื่อวันที่ 2016-07-22 14:17:34
รายละเอียดของการตอบ ::
ตัวนี้น่าจะเป็นตัวที่ดึงดาต้ามามากกว่าครับ


ลองดีบั๊กโค๊ด sql ดูในไฟล์ test_data1 ดูครับว่ามีอะไรออกมาบ้าง ถ้าไม่ออกก็ลอง ดีบั๊กตัว script ดูครับว่ามันทำงานได้ครบไหม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-22 14:24:08 By : Dragons_first
 


 

No. 4



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 3 เขียนโดย : Dragons_first เมื่อวันที่ 2016-07-22 14:24:08
รายละเอียดของการตอบ ::
ผมเคยทำมาเมื่อนานล่ะ จำได้ว่า ถ้าดึง url โดยไฟล์มีนามสกุล php ลองแล้ว ดีงค่าจากฐานข้อมูล ออกมาเป็น json เช็คจาก console.log ได้รูปแบบดาต้า ตามที่ตัวอย่างต้องการ แต่มันไม่ยอม ทำงานครับ มันไม่ยอม auto แบบ ตย. (ตรงนี้ผมอาจจะไม่เข้าใจ json มากพอ) แต่ลองแล้วลองอีกถ้าดึงไฟล์เป็น .php ยังไงมันก็ไม่ทำงาน (ทั้ง ๆ ที่ค่า json ก็ออกมาตาม ตย. เป๊ะๆ)
ตอนนั้นก็เลยดึงข้อมูลตรง ๆ มาจัดรูปแบบตาม code ที่อธิบายไป....ให้มันทำงานได้ แต่ ๆ ข้อมูลในส่วนที่ดึงมาของผมมัน ยังไงมันไม่เกิน 20 record ผมก็เลยแก้ปัญหาแบบนั้น ไม่ได้กังวลถึงเรื่องอื่น


คงต้องรอผู้ถาม ให้ข้อมูลเพิ่มครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-22 15:39:21 By : apisitp
 


 

No. 5



โพสกระทู้ ( 316 )
บทความ ( 0 )



สถานะออฟไลน์


ถ้าเป็นแบบนี้ดึงข้อมูลออกคับ ที่อยากได้คือ อยากดึงข้อมูลจากฐานข้อมูลครับ เลย ลองใส่ URL ให้ดึงมาจากไฟล์ test_data1.php
Code (PHP)
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>jQuery UI Autocomplete - Default functionality</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.12.0/themes/base/jquery-ui.css">
  <link rel="stylesheet" href="/resources/demos/style.css">
  <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
  <script src="https://code.jquery.com/ui/1.12.0/jquery-ui.js"></script>
  <script>
  $( function() {
    var availableTags = [
      "ActionScript",
      "AppleScript",
      "Asp",
      "BASIC",
      "C",
      "C++",
      "Clojure",
      "COBOL",
      "ColdFusion",
      "Erlang",
      "Fortran",
      "Groovy",
      "Haskell",
      "Java",
      "JavaScript",
      "Lisp",
      "Perl",
      "PHP",
      "Python",
      "Ruby",
      "Scala",
      "Scheme"
    ];
	
    $( "#tags" ).autocomplete({
      source: availableTags
    });
  } );
  </script>
</head>
<body>
 
<div class="ui-widget">
  <label for="tags">Tags: </label>
  <input id="tags">
</div>
 
 
</body>
</html>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-22 15:47:17 By : rock_rock
 


 

No. 6



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 5 เขียนโดย : rock_rock เมื่อวันที่ 2016-07-22 15:47:17
รายละเอียดของการตอบ ::
ก็ใช่ครับ ผมถึงแก้ปัญหาโดยดึงค่าจากฐานข้อมูลมาใส่แทนตรง ๆ ผมก็ยืนยันว่า ถ้านามสกุล .php มันไม่ยอมทำงาน มันต้องเป็นนามสกุล .json
ผมเคยหาข้อมูลว่า จะเอาค่าที่ได้จาก นามสกุล .php ไปทำหรือแปลงให้ได้เป็นนามสกุล .json ผมก็หาวิธีไม่ได้
และ docs เขาก้ไม่ได้แนะนำวิธีการดึงค่าจากฐานข้อมูลเลย


ผมคิดไปไกลว่า คงต้องไล่หาในไฟล์ jquery.easy-autocomplete.js ว่า มันควบคุมการทำงาน ของนามสกุลไฟล์ตรงไหน แต่ก็ยังไม่ได้ลอง
ผมก็เลยแก้ดื้อ ๆ ดึงข้อมูลมาใส่ตรง ๆ แทนครับ

ลองหาทางดู ถ้าแก้ปัญหาเรื่องนามสกุลไฟล์ได้ เอามาบอกด้วยนะครับ

ปล.ผมว่า code ไม่ผิดหรอก ผมยังยืนยันว่าปัญหามาจาก นามสกุลไฟล์


ประวัติการแก้ไข
2016-07-22 16:02:31
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-22 15:59:42 By : apisitp
 


 

No. 7



โพสกระทู้ ( 3,750 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์
Facebook

Code (PHP)
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>jQuery UI Autocomplete - Default functionality</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.12.0/themes/base/jquery-ui.css">
  <link rel="stylesheet" href="/resources/demos/style.css">
  <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
  <script src="https://code.jquery.com/ui/1.12.0/jquery-ui.js"></script>
  <script>
  $( function() {
    var availableTags = [
 loop sql ตรงนี้เลยครับ
    ];
	
    $( "#tags" ).autocomplete({
      source: availableTags
    });
  } );
  </script>
</head>
<body>
 
<div class="ui-widget">
  <label for="tags">Tags: </label>
  <input id="tags">
</div>
 
 
</body>
</html>


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-22 18:03:44 By : Dragons_first
 


 

No. 8



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


Code (PHP)
<?PHP
$data = /** whatever you're serializing **/;
header('Content-Type: application/json');
echo json_encode($data);


ลืม header ไปหรือเปล่าครับ

ปล. php ส่งได้ทุก format ครับ แค่ใส่ header ให้ตรง


ประวัติการแก้ไข
2016-07-22 18:52:44
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-22 18:51:09 By : Chaidhanan
 


 

No. 9



โพสกระทู้ ( 484 )
บทความ ( 3 )



สถานะออฟไลน์


jquery-ui: autocomplete->multiple value
php
Code (PHP)
	public function autocomplete($param)
	{
		$str_sql = "SELECT item, unit FROM issue_detail WHERE item IS NOT NULL AND LOWER(item) LIKE LOWER('%".$this->input->get('term', TRUE)."%') GROUP BY  item ASC LIMIT 20";
		$rs = $this->db->query($str_sql)->result();
		foreach ($rs as $row)
		{
			$data[] = array('label' => $row->item, 'unit' => $row->unit);
		}
		echo json_encode($data);
	}


java: เลือก item ดึง detail อื่นมาแสดง
Code (JavaScript)
		$(".autocomplete").autocomplete({
			source: base_url + "issue/autocomplete/item/",
			minLength: 0,
			focus: function( event, ui ) {
				$(this).val( ui.item.value);
				return false;
			},
			select: function(e, ui) {
				var tr = $(this).closest('tr');
				var val4 = tr.find('td:nth-child(5) input').val().trim();
				if (isNaN(val4) == true && val4.length > 0) {
					tr.addClass('bg-error');
				}
				else {
					tr.removeClass('bg-error');
				}
				tr.find('td:nth-child(6) input').val(ui.item.unit);
			}
		});  

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-23 08:29:18 By : fossil31
 


 

No. 10



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 8 เขียนโดย : Chaidhanan เมื่อวันที่ 2016-07-22 18:51:09
รายละเอียดของการตอบ ::
เดี๋ยวลองทำดูครับ ขอบคุณมากพี่


ตอบความคิดเห็นที่ : 9 เขียนโดย : fossil31 เมื่อวันที่ 2016-07-23 08:29:18
รายละเอียดของการตอบ ::
autocomplete ตัวนี้ ใช่ของ http://easyautocomplete.com หรือเปล่าครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-07-23 10:28:08 By : apisitp
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ทำ autocompaelt ดึงข้อมูล json ตัวอย่างจาก http://easyautocomplete.com/ run ไม่ออก ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่