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 > ช่วยดู jquery json ทีครับ เหมือนข้อมูลมันส่งไม่มา ..แก้มาหลายวันแล้วครับ TT



 

ช่วยดู jquery json ทีครับ เหมือนข้อมูลมันส่งไม่มา ..แก้มาหลายวันแล้วครับ TT

 



Topic : 117120



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



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




สรุปเหมือน json ไม่ส่งมาตรง jquery เพื่อแสดงใน textbox ต้องแก้ตรงไหนบ้างครับ แก้มาเยอะเลยน่าจะเหลือแค่ตรงนี้แล้ว


รันออกมาก็เป็น json
s

อันนี้เป็น input ใน loop while
Code (PHP)
 <div class="row">
        			<div class="form-group col-md-4">
        				<label for="barcodeMachine">Barcode</label>
    					<input type="text" class="form-control" id="barcodeMachine<?php echo $i; ?>" placeholder="Enter Barcode" name="barcodeMachine<?php echo $i; ?>" />
  					</div>
        						
        			<div class="form-group col-md-5 col-md-offset-1">
        				<label for="nameMachine">ชื่อหนัง</label>
    					<input type="text" class="form-control" id="nameMovie<?php echo $i; ?>" name="nameMovie<?php echo $i; ?>" />
  					</div>
            </div>



Code (PHP)
<script type="text/javascript">
$(document).ready(function(){

	$("input[name^='barcodeMachine']").change(function(){
			$.ajax({ 
				url: "autofill.php" ,
				type: "POST",
				data: 'barcode=' +$("input[name^='barcodeMachine']").val()
			})
			.success(function(result) 
			{ 

				var obj = $.parseJSON(result); //'{"na" : "John"}'
				//alert( obj.na === "John" );
					if(obj == '')
					{
						$('input[type=text]').val(''); //เหมือนเข้าเงื่อนไขนี้
					}
					else
					{
						  $.each(obj, function(key, inval) 
						  {

							   $("input[name^='barcodeMachine']").val(inval["barcode"]); //ตรงนี้จำเป็นตรงครบทุกฟิลด์มั้ยครับ
							   $("input[name^='nameMovie']").val(inval["title"]);
							   // $("#txtEmail").val(inval["Email"]);
							   // $("#txtCountryCode").val(inval["CountryCode"]);
							   // $("#txtBudget").val(inval["Budget"]);
							   // $("#txtUsed").val(inval["Used"]);

						  });
					}

			});

		});
	});
</script>



autofill.php
Code (PHP)
<?php
	include 'connect.php';

try {
	$_POST['barcode'] = 30006000020686;
	$barcode = trim($_POST['barcode']);

		$column = $db->prepare('SELECT * FROM tbl_result WHERE result_barcode = :barcode ');
		$column->bindParam(':barcode', $barcode, PDO::PARAM_STR);
		$column->execute();
		$Colcount = $column->columnCount(); //count column 
		//print("result set has $Colcount columns");

		$resultArray = array();

		//get field name
		//$rs = $db->query('SELECT * FROM tbl_result LIMIT 0');
		for ($i = 0; $i < $Colcount; $i++) //$column->columnCount()
		{
    		$col = $column->getColumnMeta($i);
    		$columns[] = $col['name'];
		}
		//print_r($columns);

		while ($row = $column->fetch()) 
		{
			//echo $row['count'];
			$arrCol = array();
			for($i=0; $i<$Colcount; $i++) 
			{
				$arrCol[$columns[$i]] = $row[$i];
			}
			array_push($resultArray, $arrCol);
		}

		$db = null;

		echo json_encode($resultArray);
	}

catch (PDOException $e) {
 echo 'ERROR: ' . $e->getMessage();
}
?>




Tag : PHP, MySQL, Ajax, jQuery







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-06-12 19:23:30 By : littlebeer View : 1151 Reply : 20
 

 

No. 1

Guest


เอิ่ม...data ต้องเป็นแบบนี้รึเปล่า
Code (JavaScript)
data: { barcode: $("input[name^='barcodeMachine']").val()}







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-13 03:06:16 By : ผ่ามา
 


 

No. 2

Guest


ลอง alert(result) ใน function success รึยังครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-13 07:49:19 By : TT
 

 

No. 3



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



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


Alert(result) แล้วออกมาดังภาพครับ ข้อมูลก็ดูเหมือนจะมาแต่ทำไมพอใช้จริงมันไม่เข้าเงื่อนไข else ลองเอารหัส barcode มาใส่ก็ไม่ได้ ไม่เข้าเงื่อนไข else input โดนล้าง TT

d
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-13 14:09:32 By : littlebeer
 


 

No. 4



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



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


obj เป็น Array ซึ่งจะมีข้อมูลแค่ชุดเดียวอยู่แล้วใช่ไหม
ถ้างั้นไม่ทำอย่างนี้ไปเลย

jQuery
success(function(result)
{
  if( result != "" ) {
    var obj = $.parseJSON(result); 
    alert(obj[0].result_barcode);
    alert(obj[0].result_title);
  }
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-13 21:46:33 By : watcharop
 


 

No. 5



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



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


ตอบความคิดเห็นที่ : 4 เขียนโดย : watcharop เมื่อวันที่ 2015-06-13 21:46:33
รายละเอียดของการตอบ ::
ขึ้นแล้วครับ ขอบคุณมาก ๆ เลยครับ แต่ติดอีกนิดครับ จากรูปมันวนรูปแสดง 2 เครื่อง แต่ทำไมใส่ได้แค่เครื่องแรก เครื่องที่ 2 มันไม่แสดงชื่อหนังครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-14 19:40:20 By : littlebeer
 


 

No. 6



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



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



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-15 10:19:37 By : littlebeer
 


 

No. 7



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



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



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-15 13:49:34 By : littlebeer
 


 

No. 8



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



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


Quote:
จากรูปมันวนรูปแสดง 2 เครื่อง

รูปไหนอ่ะ ไม่เข้าใจ
ที่เห็นคือ autofill.php return เครื่องเดียว


ประวัติการแก้ไข
2015-06-15 20:00:46
2015-06-15 20:01:32
2015-06-16 08:39:10
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-15 19:58:49 By : watcharop
 


 

No. 9



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



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


ตอบความคิดเห็นที่ : 8 เขียนโดย : watcharop เมื่อวันที่ 2015-06-15 19:58:49
รายละเอียดของการตอบ ::
แบบในรูปนะครับ ซึ่งจำนวนเครื่องได้จากวนลูปมา พอคลิก ยืม ก็จะขึ้น dialog ดังรูป 2 ให้ใส่ barcode
เครื่องแรกใส่ barcode ชื่อหนังก็ขึ้นนะครับ แต่เครื่องที่ 2 หรือเครื่องต่อ ๆ ไปใส่ barcode แล้วชื่อหนังไม่ขึ้นครับ

x

/



ประวัติการแก้ไข
2015-06-16 09:18:41
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 09:16:50 By : littlebeer
 


 

No. 10

Guest


ผมว่าปัญหาตรงนี้

Code (PHP)
data: 'barcode=' +$("input[name^='barcodeMachine']").val()


มันจะมองหา input ที่มีชื่อเริ่มต้น barcodeMachine ซึ่งคุณมี input ที่ชื่อนี้ขึ้นต้น หลายตัว ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 09:24:34 By : WiTT
 


 

No. 11



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



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


Alert ก่อนเลยครับ ว่าได้ค่าที่ควรจะเป็นรึเปล่า

Code (JavaScript)

	$("input[name^='barcodeMachine']").change(function(){
                        alert($("input[name^='barcodeMachine']").val());    // ALERT
			$.ajax({ 
				url: "autofill.php" ,
				type: "POST",
				data: 'barcode=' +$("input[name^='barcodeMachine']").val()
			})
		});
	});


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 11:34:19 By : watcharop
 


 

No. 12



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



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


ตอบความคิดเห็นที่ : 11 เขียนโดย : watcharop เมื่อวันที่ 2015-06-16 11:34:19
รายละเอียดของการตอบ ::
เครื่อง 2 alert แล้วไม่ขึ้นค่าอะไรเลยครับ เครื่องแรกขึ้นปกติ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 11:42:53 By : littlebeer
 


 

No. 13



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



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


ตอบความคิดเห็นที่ : 10 เขียนโดย : WiTT เมื่อวันที่ 2015-06-16 09:24:34
รายละเอียดของการตอบ ::
input มันอยู่ใน loop น่ะครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 11:43:56 By : littlebeer
 


 

No. 14

Guest


ก็นั่นล่ะครับ มันอยู่ในลูป มันก็เลยเกิด input ที่ชื่อขึ้นต้นด้วย barcodeMachine หลายตัว

Code (PHP)
<script type="text/javascript">
$(document).ready(function(){

	$("input[name^='barcodeMachine']").change(function(){
			alert($(this).val()); //+ Alert ค่าออกมาว่าได้ค่าเป็นอะไร
			$.ajax({ 
				url: "autofill.php" ,
				type: "POST",
				//data: 'barcode=' +$("input[name^='barcodeMachine']").val()
				data: 'barcode=' +$(this).val()
			})
			.success(function(result) 
			{ 

				var obj = $.parseJSON(result); //'{"na" : "John"}'
				//alert( obj.na === "John" );
					if(obj == '')
					{
						$('input[type=text]').val(''); //เหมือนเข้าเงื่อนไขนี้
					}
					else
					{
						  $.each(obj, function(key, inval) 
						  {

							   $("input[name^='barcodeMachine']").val(inval["barcode"]); //ตรงนี้จำเป็นตรงครบทุกฟิลด์มั้ยครับ
							   $("input[name^='nameMovie']").val(inval["title"]);
							   // $("#txtEmail").val(inval["Email"]);
							   // $("#txtCountryCode").val(inval["CountryCode"]);
							   // $("#txtBudget").val(inval["Budget"]);
							   // $("#txtUsed").val(inval["Used"]);

						  });
					}

			});

		});
	});
</script>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 12:47:10 By : WiTT
 


 

No. 15



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



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


ได้แล้วครับ เปลี่ยนแค่ตรงนี้เอง รบกวนอธิบายตรงนี้ให้หน่อยได้มั้ยครับว่า this คืออะไร

Code (PHP)
data: 'barcode=' +$(this).val()

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 13:01:17 By : littlebeer
 


 

No. 16



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

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

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


this คือ $("input[name^='barcodeMachine']").val
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 13:30:29 By : apisitp
 


 

No. 17

Guest


อ้างอิงถึงตัวมันเอง ซึ่งก็คือ input ที่มีการ change


เดิมคุณกำหนด data: 'barcode=' +$("input[name^='barcodeMachine']").val()

มันมองหาเจาะจงไม่ได้เพราะ input มี ชื่อขึ้นต้นด้วย barcodeMachine หลายตัว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 13:31:54 By : WiTT
 


 

No. 18



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

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

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


ตอบความคิดเห็นที่ : 17 เขียนโดย : WiTT เมื่อวันที่ 2015-06-16 13:31:54
รายละเอียดของการตอบ ::
ขอบคุณครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 13:36:17 By : apisitp
 


 

No. 19

Guest


ตอบความคิดเห็นที่ : 18 เขียนโดย : apisitp เมื่อวันที่ 2015-06-16 13:36:17
รายละเอียดของการตอบ ::
ครับ แลกเปลี่ยนความรู้กันครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 13:45:05 By : WiTT
 


 

No. 20



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



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


ขอบคุณมากๆ ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-06-16 16:02:51 By : littlebeer
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยดู jquery json ทีครับ เหมือนข้อมูลมันส่งไม่มา ..แก้มาหลายวันแล้วครับ TT
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 03
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 อัตราราคา คลิกที่นี่