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 > ต้องการให้ ค่าใน textbox ดึงค่ามาจาก db โดยที่ค่าใน textbox เป็นไปตามการเปลี่ยนของ dropdown ซึ่งดึงค่ามาจาก db เช่นกัน



 

ต้องการให้ ค่าใน textbox ดึงค่ามาจาก db โดยที่ค่าใน textbox เป็นไปตามการเปลี่ยนของ dropdown ซึ่งดึงค่ามาจาก db เช่นกัน

 



Topic : 075726

Guest




คือว่าอยากให้เมื่อเลือกค่าจาก dropdown (ซึ่งเป็นค่าที่ดึงมาจาก db) แล้วมีค่าใส่ลงใน textbox 2 textboxes
(โดยที่ค่าใน textbox นี้เป็นค่าที่ได้จาก db เช่นกัน)



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-03-18 12:39:26 By : jum View : 7289 Reply : 18
 

 

No. 1

Guest


Code
<select name = "sldata" onchange="document.getElementById('txtname').value=this.value;">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>

<INPUT TYPE="text" NAME="txtname" id="txtname">





ลองดูครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-18 13:14:18 By : Thep
 


 

No. 2

Guest


Code (PHP)
<script type="text/javascript"> 
function putData(objValue) { 
	if ( objValue != "" ) {
		
		if(c_id1.value=="MH001")
		{
	   		document.form1.c_date.value = "MON WED FRI";
	   		document.form1.st_time.value = "08:00-10:00";	
	    }
		else if(c_id1.value=="MH002")
		{
			document.form1.c_date.value = "MON WED FRI";
	   		document.form1.st_time.value = "10:00-12:00";	
		}
		else if(c_id1.value=="MH003")
		{
			document.form1.c_date.value = "MON WED FRI";
	   		document.form1.st_time.value = "13:00-15:00";	
		}
		else if(c_id1.value=="MH004")
		{
			document.form1.c_date.value = "SAT SUN";
	   		document.form1.st_time.value = "08:00-10:00";	
		}
		else if(c_id1.value=="MH005")
		{
			document.form1.c_date.value = "SAT SUN";
	   		document.form1.st_time.value = "10:00-12:00";	
		}
		else if(c_id1.value=="MH006")
		{
			document.form1.c_date.value = "SAT SUN";
	   		document.form1.st_time.value = "13:00-15:00";	
		}
		else if(c_id1.value=="PH004")
		{
			document.form1.c_date.value = "MON WED FRI";
	   		document.form1.st_time.value = "08:00-10:00";	
		}
		else if(c_id1.value=="PH005")
		{
			document.form1.c_date.value = "MON WED FRI";
	   		document.form1.st_time.value = "10:00-12:00";	
		}
		else if(c_id1.value=="PH006")
		{
			document.form1.c_date.value = "SAT SUN";
	   		document.form1.st_time.value = "10:00-12:00";	
		}
		else if(c_id1.value=="ET001")
		{
			document.form1.c_date.value = "MON WED FRI";
	   		document.form1.st_time.value = "10:00-13:00";	
		}
		else if(c_id1.value=="ET002")
		{
			document.form1.c_date.value = "MON WED FRI";
	   		document.form1.st_time.value = "13:00-16:00";	
		}
		
	  } else {
	   c_id1.value="";
	   document.form1.c_date.value = "";
	   document.form1.st_time.value = "";		
	  }
}
</SCRIPT>


<select name="c_id1" id="c_id1"onChange="putData(this.value)" >
              <OPTION VALUE=0>-----เลือก-----</OPTION>;
                <?
					include "connect.php";
					
					$sql='SELECT * FROM `course` WHERE 1 LIMIT 0, 30 '; 
					$result=mysql_db_query($dbname,$sql);
					while($record=mysql_fetch_array($result)){
					?>
					<option value="<?=$record[c_id1];?>"><?=$record["c_id1"]?></option>
                    <?
					}
			
				?>
</select>
<input name="c_date" type="text" disabled id="c_date">
<input name="st_time" type="text" disabled id="st_time">


คือว่าอยากเปลี่ยน code ตรงส่วน putData ให้มันดึงค่าจาก db ไม่ใช่ เป็น text ควรเปลี่ยนยังไงดีค่ะ
ขอบคุณค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-18 13:46:23 By : jum
 

 

No. 3

Guest


1. แก้ Javscript และเพิ่ม iframe

Code (PHP)
<script type="text/javascript"> 
function putData(objValue) { 
	if (objValue != "") {
    document.form1.target = "ifselectdata";
	document.form1.method = "post";
	document.form1.action = "selectdata.php?objValue="+objValue;
	document.form1.submit();
	}
	else {
	c_id1.value="";
	document.form1.c_date.value = "";
	document.form1.st_time.value = "";	
	}
}
</SCRIPT>

<input name="c_date" type="text" disabled id="c_date">
<input name="st_time" type="text" disabled id="st_time">
<iframe name="ifselectdata" width="300" height="200" style="display:"></iframe>


2. สร้าง File ใหม่ชื่อ selectdata.php

Code (PHP)
<?php
include "connect.php";

$objValue = $_REQUEST["objValue"];

$sql="SELECT c_date,st_time FROM tablename WHERE  c_id =".$objValue." "; 
$result=mysql_db_query($dbname,$sql);
while($record=mysql_fetch_array($result)){
?>
<script type="text/javascript"> 
parent.document.getElementById('c_date').value = "<?=$objResult["c_date"];?>";
parent.document.getElementById('st_time').value = "<?=$objResult["st_time"];?>";
</script> 
<?php
}
?>



ลองดู ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-18 14:09:18 By : Thep
 


 

No. 4

Guest


ขอบคุณค่ะ เด๋วลองดูก่อนนะคะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-18 14:43:28 By : jum
 


 

No. 5

Guest


ในช่อง textbox ของ c_date และ st_time ยังไม่ขึ้นอัตโนมัติ เลยค่ะ
แล้วอยากถามว่า <iframe name="ifselectdata" width="300" height="200" style="display:"></iframe>
เอาไว้ทำไรคะ
ขอบคุณค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-18 17:42:39 By : jum
 


 

No. 6

Guest


ตรง File ใหม่ที่สร้างขึ้นมา แก้ตรง Javascript เป็น

Code
<script type="text/javascript">
parent.document.getElementById('c_date').value = "<?=record["c_date"];?>";
parent.document.getElementById('st_time').value = "<?=record["st_time"];?>";
</script>


<iframe name="ifselectdata" width="300" height="200" style="display:"></iframe>


iframe นี้เอาไว้ submit ค่า เข้าไปที่ File ใหม่ที่สร้างขึ้นมา โดยการส่ง ค่าที่ได้จาก function onChange="putData(this.value)

พอ submit เข้าไปแล้ว ก็ไป select ข้อมูล where objValue ที่เราส่งเข้าไป
พอ select ข้อมูล ได้แล้ว ก็ทำการ ส่งค่ากลับมายัง form หลัก โดยใช้ javascript


หมายเหตุ : ตัว iframe ถ้าไม่อยากให้ Show ก็ใส่ style="display:none"


ลองอีกทีครับ
ถ้าไม่ได้อย่าง ผมขอดู Code ของ File ใหม่ที่สร้างขึ้นมา หน่อยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-18 18:39:31 By : Thep
 


 

No. 7

Guest


ไม่ได้อยู่ดีค่ะ

Code (PHP)
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874">
<title>Untitled Document</title>
</head>

<body>
<?php
include "connect.php";

$objValue = $_REQUEST["objValue"];

$sql=$sql = 'SELECT c_date , st_time '
        . ' FROM course  WHERE c_id ="$objValue" LIMIT 0, 30 ';
$result=mysql_db_query($dbname,$sql);
$record=mysql_fetch_array($result);{
?>
<script type="text/javascript">
parent.document.getElementById('c_date').value = "<?=$record["c_date"];?>";
parent.document.getElementById('st_time').value = "<?=$record["st_time"];?>";
</script>
<?php
}
?>
</body>
</html>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-18 23:14:04 By : jum
 


 

No. 8

Guest


แก้

Code (PHP)
$sql=$sql = 'SELECT c_date , st_time '
. ' FROM course WHERE c_id ="$objValue" LIMIT 0, 30 ';



เป็น

Code (PHP)
$sql = "SELECT c_date , st_time ";
$sql .= "FROM course WHERE c_id =".$objValue." LIMIT 0, 30 ";



ลองดูอีกทีครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-19 10:04:21 By : Thep
 


 

No. 9

Guest


แก้แล้วนะคะ แต่ก็ยังไม่ขึ้นอัตโนมัติอยู่ดีค่ะ TT-TT
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-19 15:40:31 By : jum
 


 

No. 10

Guest


เวลาที่ Click onChange ที่ <select name="c_id1" id="c_id1" onChange="putData(this.value)" >

ข้อมูลใน

<input name="c_date" type="text" disabled id="c_date">
<input name="st_time" type="text" disabled id="st_time">

ขึ้นให้ Auto หรือเปล่า?
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-19 16:45:59 By : Thep
 


 

No. 11

Guest


ไม่ขึ้นค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-19 16:52:02 By : jum
 


 

No. 12

Guest


ตัวแปร $objValue ที่ส่งมาจากหน้าหลัก แล้วเอามา

$sql = "SELECT c_date , st_time ";
$sql .= "FROM course WHERE c_id =".$objValue." LIMIT 0, 30 ";

ดึงข้อมูลได้มาได้กี่ Record ครับ ?
ลอง echo $sql เอาไป Run ที่ Mysql ดูครับ ถ้าได้มากกว่า 1 Record มันจะใช้ไม่ได้ครับ ต้องได้แค่ 1 Record เท่านั้น


ลองดูใหม่ ถ้าไม่ได้อย่างไร เดี๋ยวเปลี่ยนวิธี ให้ใหม่

ถามอีกทีเพื่อความมั่นใจ


ทุกครั้งที่เธอ Click onChange ที่ <select name="c_id1" id="c_id1" onChange="putData(this.value)" >
เธอต้องการให้ show ข้อมูลที่

<input name="c_date" type="text" disabled id="c_date">
<input name="st_time" type="text" disabled id="st_time">

โดยที่เอาข้อมูลจาก ฐานข้อมูล ชื่อ course where c_id = ค่า c_id1 ที่ <select name="c_id1" id="c_id1" onChange="putData(this.value)" > ใช่หรือเปล่า?
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-19 16:57:57 By : Thep
 


 

No. 13

Guest


เปลี่ยนใหม่เป็นแบบนี้

1. เปลี่ยน Javascript

<script type="text/javascript"> 
function putData(_objindex) { 
	if (_objindex != 0) {
	   var _cdate = document.getElementById("hcdate").value.split(",");
	   var _ctime = document.getElementById("hsttime").value.split(",");

	   document.form1.c_date.value = _cdate[_objindex];
	   document.form1.st_time.value = _ctime[_objindex];

	}
	else {
	document.form1.c_date.value = "";
	document.form1.st_time.value = "";	
	}
}
</SCRIPT>


2. เพิ่ม Hidden 2 อันขึ้น ชื่อ hcdate และ hsttime มาเพื่อใช้เก็บ c_date กับ st_time กำหนดค่าตัวแปร $hcdate และ $hsttime


Code (PHP)
<?php
$hcdate = "";
$hsttime = "";
?>

<select name="c_id1" id="c_id1"onChange="putData(this.selectedIndex)" >
              <OPTION VALUE=0>-----เลือก-----</OPTION>;
                <?
					include "connect.php";
					
					$sql='SELECT * FROM `course` WHERE 1 LIMIT 0, 30 '; 
					$result=mysql_db_query($dbname,$sql);
					while($record=mysql_fetch_array($result)){
                                         $hcdate .= ",".$record["c_date"];
                                         $hsttime .= ",". $record["st_time"];
					?>
					<option value="<?=$record[c_id1];?>"><?=$record["c_id1"]?></option>
                    <?
					}
			
				?>
</select>
<input name="c_date" type="text" disabled id="c_date">
<input name="st_time" type="text" disabled id="st_time">
<input  type="hidden" name="hcdate" id="hcdate" value="<?=$hcdate?>">
<input  type="hidden" name="hsttime" id="hsttime" value="<?=$hsttime?>">



3. สรุปคือ Copy ข้อ 1 และ ข้อ 2 ไปแทนของเดิม

ลองดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-20 08:22:33 By : Thep
 


 

No. 14

Guest


ขอบคุณมากๆค่ะ
ได้แล้วๆ เย้ๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-03-20 10:50:25 By : jum
 


 

No. 15

Guest


พี่คับ ช่วยผมหน่อย คือ ผมมี select box 2ตัว แล้วอยากให้โชว์ใน textflied เดียวกัน ทำไงคับ ผมลองทำตามจากข้างบนแล้วคับแต่มันแสดงได้แค่ค่าเดียว พอใส่อีกค่ามันไม่แสดงเลย


----------------------------------------------------------------------------

<input name="packingid" type="text" placeholder="xx-xxxx-xxx-xxxx" id='department' value="" size="32" />
----------------------------------------
<select name="typeid" onchange="document.getElementById('type')">
<option value=""></option>
<?php
do {
?>
<option value="<?php echo $row_type['typeid']?>"><?php echo $row_type['typename']?> </option>
<?php
} while ($row_type = mysql_fetch_assoc($type));
$rows = mysql_num_rows($type);
if($rows > 0) {
mysql_data_seek($type, 0);
$row_type = mysql_fetch_assoc($type);
}
?>
</select>
---------------------------------------------------
<select name="dpmid" onchange="document.getElementById('department').value=this.value;">
<option value=""></option>
<?php
do {
?>
<option value="<?php echo $row_department['dpmid']?>"><?php echo $row_department['namedpm']?></option>
<?php
} while ($row_department = mysql_fetch_assoc($department));
$rows = mysql_num_rows($department);
if($rows > 0) {
mysql_data_seek($department, 0);
$row_department = mysql_fetch_assoc($department);
}
?>
</select>
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-03-02 15:57:11 By : yuttharit
 


 

No. 16



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

Hall of Fame 2012

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


ตอบความคิดเห็นที่ : 15 เขียนโดย : yuttharit เมื่อวันที่ 2018-03-02 15:57:11
รายละเอียดของการตอบ ::
Code (PHP)
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $('select').on('change',function(){
    	var txt="";
    	$('select').each(function(){
        	txt+=$(this).val()
    		$('#box').val(txt);
        });
    });
});
</script>
</head>
<body>

<input type="text" id="box">

<select>
<option value="">Please you select</option>
<option value="1">1</option>
<option value="2">2</option>
</select>

<select>
<option value="">Please you select</option>
<option value="a">a</option>
<option value="b">b</option>
</select>

</body>
</html>




ประวัติการแก้ไข
2018-03-02 16:31:26
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-03-02 16:31:09 By : dudesaranyu
 


 

No. 17

Guest


ขอบคุณมากคับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-03-03 14:07:29 By : yuttharit
 


 

No. 18

Guest


พี่คับขอสอบถามอีกอย่างนึงคับ เราจะใช้ สคิป 2 สคิป ในหน้าเด่วกันยังไงคับ

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$('select').on('change',function(){
var txt="";
$('select').each(function(){
txt+=$(this).val()
$('#box').val(txt);
});
});
});
</script>
------------------------------------------------

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="../jquery.ui-1.5.2/jquery-1.2.6.js" type="text/javascript"></script>
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-03-04 17:17:37 By : yuttharit
 

   

ค้นหาข้อมูล


   
 

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