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

HOME > PHP > PHP Forum > ช่วยแก้ไขโค๊ด การเลือกข้อมูลจาก ListMenu แบบ 2 ชั้น แสดงรายการย่อยลงช่อง Textbox



 

ช่วยแก้ไขโค๊ด การเลือกข้อมูลจาก ListMenu แบบ 2 ชั้น แสดงรายการย่อยลงช่อง Textbox

 



Topic : 025973



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



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




เรียน พี่ ๆ ทุกท่านค่ะ
คือว่ากำลังเขียน PHP เพื่อเก็บข้อมูลคอมพิวเตอร์ โดยตัวอย่างดังรูป

ListMenu2 SeletecText

เมื่อเลือก ListMenu ในช่อง Type จะแสดงรายการย่อยนั้น ๆ ในช่อง Brand / Model แต่สามารถแสดงข้อมูลใน ListMenu ได้ทั้งสอง แต่มีปัญหาอยู่ว่าเมื่อรายการใน ListMenu ที่ช่อง Brand / Model โดยรายการช่อง Description แสดงข้อมูลออกมาลงในช่อง Description
แต่มันไม่ตรงกับข้อมูล Brand / Model ด้วยเลยค่ะ (ดูภาพประกอบนะค่ะ)
จึงขอรบกวนช่วยแก้ไขโค๊ด การเลือกข้อมูลจาก ListMenu แบบ 2 ชั้น แสดงรายการย่อยลงช่อง Textbox
------------------------------------------
ไฟล์ brand.php
------------------------------------------
<?php
header("Content-Type: text/plain; charset=TIS-620");
$host="localhost";
$user="user";
$password="user";
$dbname="db_typebrand";
$connection=mysql_connect($host,$user,$password) or die("เชื่อมต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("ไม่สามารถเลือกฐานข้อมูลได้");
///////////////////////////////////////////////////

$sql="SELECT * from tb_brand WHERE type_id = '$id'";
$dbquery = mysql_db_query($dbname, $sql);
echo "----- กรุณาเลือก Brand Model ------,/";
while ($result = mysql_fetch_array($dbquery)){
echo"$result[brandname],$result[brand_id]/";
}
mysql_close();
?>


------------------------------------------
ไฟล์ type.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=windows-874" />
<title>:: ทดสอบ ListMenu 2 ชั้น ::</title>

<script>
var xmlHttp;

function createXMLHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}

function list_namesub(id) {
var obj = document.getElementById("selectBrand");
var obj_default = '----- กรุณาเลือก Brand Model ------';
if(id ==""){
while(obj.childNodes.length>0){obj.removeChild(obj.childNodes[0]);}
obj[0] = new Option(obj_default,'');
}else{
var url = "brand.php?id=" + id;
createXMLHttpRequest();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET", url, true);
xmlHttp.send(null);

function handleStateChange() {
if(xmlHttp.readyState == 4) {
if(xmlHttp.status == 200) {
var results = xmlHttp.responseText;
while(obj.childNodes.length>0){obj.removeChild(obj.childNodes[0]);
}arr_list=results.split("/");
if(arr_list.length-1!=0){
for (var i=0; i < eval(arr_list.length-1); i++) {
shop_arr=arr_list[i].split(",");
obj.options[i] = new Option(shop_arr[0],shop_arr[1]);
}
}else{
while(obj.childNodes.length>0){obj.removeChild(obj.childNodes[0]);}
obj[0] = new Option(obj_default,'');
}
}
}
}
}
}

function ChangeBrand(which){
document.formTB.textD.value=textDescription[which.selectedIndex]
document.formTB.textD.value=textDescription[document.formTB.selectBrand.selectedIndex]
}

</script>
</head>

<body>
<form id="formTB" name="formTB" method="POST" action="">
<table width="100%" border="0" cellspacing="3" cellpadding="3">
<tr>
<td width="18%" align="right">Type :</td>
<td width="82%">
<select name="depart" id="depart" onChange="list_namesub(this.value);" style="width:400px">
<option value="">----- กรุณาเลือก Type -----</option>
<?php
$host="localhost";
$user="user";
$password="user";
$dbname="db_typebrand";
$connection=mysql_connect($host,$user,$password) or die("เชื่อมต่อฐานข้อมูลไม่ได้");
mysql_select_db($dbname) or die("ไม่สามารถเลือกฐานข้อมูลได้");
////////////////////////////////////////

$sql="SELECT * FROM tb_type ORDER BY type_id ASC";
$dbquery=mysql_db_query($dbname,$sql);
while($result=mysql_fetch_array($dbquery)){
?>
<option value="<?=$result[type_id];?>"><?=$result[type_desc];?></option>
<?php } ?>
</select></td>
</tr>

<tr>
<td height="28" align="right">Brand/Model : </td>
<td>
<script language="javascript">
var textDescription=new Array()
textDescription[1]=''
<?php
$sqlDesc = "SELECT * FROM tb_brand ORDER BY brand_id";
$resultDesc = mysql_query($sqlDesc) or die ("$sql_Error");
while($rowDesc =mysql_fetch_array($resultDesc)){
?>
textDescription[<?=($rowDesc ["brand_id"])?>]='<?=($rowDesc ["description"])?>'
<?php } ?>
</script>
<select name="selectBrand" id="selectBrand" style="width:400px" onChange="ChangeBrand(this)">
<option value="">----- กรุณาเลือก Brand Model ------</option>
</select> </td>
</tr>
<tr>
<td height="28" align="right">Description : </td>
<td><input name="textD" type="text" id="textD" size="62" readonly/></td>
</tr>
</table>
</form>
</body>
</html>

-----------------------------------------------
++++ ขอขอบคุณมาก ๆ เลยนะค่ะ ++++



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-03-31 01:40:12 By : ลูกน้ำตัวน้อย ๆ View : 2425 Reply : 2
 

 

No. 1



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

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

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

ไม่จำเป็นจะต้องใช้ Ajax น่ะครับ ลองดู Code นี้น่ะครับ ง่ายดีครับ

สร้าง Dependent ListMenu เลือกข้อมูลหลักและข้อมูลย่อยเปลี่ยนตามหัวข้อหลัก






Date : 2009-03-31 06:58:43 By : webmaster
 


 

No. 2



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



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


เรียน พี่ MR.WIN ค่ะ

ไม่ได้นะค่ะ เพราะเมื่อเลือกรายการในช่อง ListMenu แล้ว จะทำให้ช่องรายการอื่น ๆ ที่เป็น textBox หายไปนะค่ะ เพราะหน้าเว็บมัน Refrash นะค่ะ จะทำอย่างไรที่ไม่ทำให้หน้าเว็บมันเกิดอาการ Refrash

อีกอย่าง ในช่อง ListMenu ที่ 3 นั้น ไม่ได้ใช้ช่อง ListMenu นะค่ะ จะใช้ช่อง textBox และจะต้องเป็นข้อมูลเดียวกันโดยแสดงออกมาเลยนะค่ะ ไม่ใช่ว่าจะต้องมาเลือกอีกนะค่ะ

ขอขอบคุณมาก เลยค่ะ รบกวนด้วยนะค่ะ งานเร่งมากเลย...
Date : 2009-03-31 09:19:55 By : LukNam
 

   

ค้นหาข้อมูล


   
 

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