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,027

HOME > PHP > PHP Forum > สอบถามเรื่อง Select/Listmenu แบบดึงข้อมูลมาพอเลือกเสร็จให้บันทึกลงฐานข้อมูลแบบไม่ต้องกด Submit หน่อยครับ



 

สอบถามเรื่อง Select/Listmenu แบบดึงข้อมูลมาพอเลือกเสร็จให้บันทึกลงฐานข้อมูลแบบไม่ต้องกด Submit หน่อยครับ

 



Topic : 113335



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



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




สอบถามหน่อยครับเรื่อง Select/Listmenu แบบดึงข้อมูลมาพอเลือกเสร็จให้บันทึกลงฐานข้อมูลแบบไม่ต้องกด Submit หน่อยครับ

พอดีอยากจะทำระบบหลังบ้านให้มันเลือกว่า แสดงข้อมูล กับ ซ่อนข้อมูลแบบเป็น Select/Listmenu อะครับ

ซึ่งอยากจะให้เลือกแล้วมันไปบันทึกลงในฐานข้อมูลเลยอะครับ โดยไม่ต้องกดปุ่ม Submit พอมีวิธีแนะนำไหมครับ

ผมอยากจะขอตัวอย่างการใช้งานนิดหน่อยอะครับ คาดว่าอาจจะต้องใช้ ajax แต่คิดไม่ออกว่าจะเขียนประมาณไหนอะครับ ช่วยหน่อยนะครับ

ขอบคุณมากครับผม

เพิ่มเติมนะครับใน ฐานข้อมูลผม SET Database ฟิวล์ status เป็น enum('reject', 'approved') แล้วนะครับ



Tag : PHP, JavaScript, Ajax, jQuery









ประวัติการแก้ไข
2014-12-19 10:48:54
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-12-19 10:45:48 By : topman View : 1033 Reply : 3
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

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

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

คุณก็ได้แนวทางแล้วนี่ครับ ใช้ jQuery ส่ง Ajax แล้วไป Save ที่ Database เลยครับ

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

	$( "#selectName" ).click(function() {

				$.ajax({
				   type: "POST",
				   url: "jQueryAjax1.php",
				   cache: false,
				   data: "val=" + $("#selectName" ).val() ,
				   success: function(msg){
					 alert( "Data Call : " + msg);
					 $("p").append(msg);
				   }
				 });

		});
	});
</script>


jQuery.ajax() - Ajax , jQuery







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-19 11:27:33 By : mr.win
 


 

No. 2



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



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


คือแบบว่า มันดึงข้อมูลมาหลายอันอะครับ ถ้าใช้ id มันจะมองไม่เห็นอะครับ มันจะเห็นแค่อันแรกอันเดียวเท่านั้นอะครับ

Code (PHP)
<select id="status" name="status">
   <option value="<?php echo $row->status?>"><?php echo $row->status;?>(SET)</option>
   <option value="reject">reject</option>
   <option value="approved">approved</option>
</select>


Code (JavaScript)
	$( "#status" ).click(function() {
				$.ajax({
				   type: "POST",
				   url: "<?php echo site_url("filelist/change_status");?>",
				   cache: false,
				   data: "val=" + $( "#status" ).val() ,
				   success: function(msg){
					 alert( "Data Call : " + msg);
					 $("p").append(msg);
				   }
				 });

		});

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-19 14:23:13 By : topman
 

 

No. 3



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



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


ได้แล้วครับ พอดีปรับไปใช้แบบ onchange="chang(this)" เลย ^_^

แนะนำสำหรับเป็นแนวทางไว้ให้สำหรับคนที่ติดปัญหาเดียวกับผมนะครับ

Code (PHP)
<select id="<?php echo $id_photo?>" name="status" onchange="do_selectchange(this)">
                                            <option value="<?php echo $row->status?>"><?php echo $row->status;?>(SET)</option>
                                            <option value="reject">reject</option>
                                            <option value="approved">approved</option>
                                            </select>


Code (JavaScript)
function Inint_AJAX() {
	  try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {}
	  try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {}
	  try { return new XMLHttpRequest(); } catch(e) {}
	  alert("XMLHttpRequest not supported");
	  return null;
	}

function do_selectchange(sel){
// 	alert(sel.id);
// 	alert(sel.value);
	  var query = 'id='+sel.id+'&value='+sel.value; //ค่าที่ส่งมาใช้เพื่อส่งไปอัปเดท
	  var req = Inint_AJAX();
	  req.onreadystatechange = function () 
	  {
	    if ( req.readyState == 4 ) 
	    {
	      if ( req.status == 200 ) 
	      {
	        alert( 'แก้ไขข้อมูลเรียบร้อย' ); //เมื่ออัปเดทเรียบร้อย (อาจแสดงข้อความว่าอัปเดทเรียบร้อยก็ได้)
	      };
	    };
	  };
	  req.open( "POST" , "....ใส่ url ที่เข้าไปเพิ่มข้อมูล ....เช่น ( update.php )" ); //สร้าง connection
  req.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" ); // set Header
	  req.send( query ); //ส่งค่า
}


ที่หน้ารับข้อมูลก็ให้

รับค่า post ของ id และ value

$id = $_POST ['id'] ;
$val = $_POST ['value'] ;

หลังจากนั้นก็เอาค่าไปบันทึกลงข้อมูล
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-19 17:23:58 By : topman
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่อง Select/Listmenu แบบดึงข้อมูลมาพอเลือกเสร็จให้บันทึกลงฐานข้อมูลแบบไม่ต้องกด Submit หน่อยครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 01
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 อัตราราคา คลิกที่นี่