|
|
|
อยากสอบถามเรื่อง Dependent listMenu 2 ชั้นอ่าค่ะ ว่ามันทำยังไง |
|
|
|
|
|
|
|
ที่ปรับเปลี่ยนก็ประมาณนี้ค่ะ มันขึ้นแต่ช่อง location ช่อง area name ไม่ขึนอ่าค่ะ
Code (PHP)
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Dropdownlist Test!!</title>
<?
$hostname = "localhost";
$username = "root";
$password = "1234";
$dbname = "speedtest";
$conn = mysql_connect($hostname,$username,$password) or die(mysql_error());
mysql_select_db ( $dbname, $conn )
or die ( "can't connect database" );
?>
<script language = "JavaScript">
//**** List Province (Start) ***//
function Listarea(SelectValue)
{
form1.sarea.length = 0
//*** Insert null Default Value ***//
var myOption = new Option('','')
frmMain.ddlProvince.options[form1.sarea.length]= myOption
<?
$intRows = 0;
$strSQL = "SELECT * FROM areas ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$intRows = 0;
while($objResult = mysql_fetch_array($objQuery))
{
$intRows++;
?>
x = <?=$intRows;?>;
mySubList = new Array();
strGroup = <?=$objResult["location_id"];?>;
strValue = "<?=$objResult["area_id"];?>";
strItem = "<?=$objResult["area_name"];?>";
mySubList[x,0] = strItem;
mySubList[x,1] = strGroup;
mySubList[x,2] = strValue;
if (mySubList[x,1] == SelectValue){
var myOption = new Option(mySubList[x,0], mySubList[x,2])
form1.sarea.options[form1.sarea.length]= myOption
}
<?
}
?>
}
</script>
</head>
<body>
<form id="form1" name="form1" method="post" action="">
location :
<label>
<select name="slocation" id="slocation" style = "width:150px" onChange = "Listarea(this.value)">
<?
$sqltxt = "SELECT * FROM locations";
$result = mysql_query ( $sqltxt, $conn );
while ( $rs = mysql_fetch_array ( $result ) )
{
?>
<option value=" <?=$objResult["location_id"];?>" font color="#0000FF"> <?=$rs["location_name"];?> </font></option>
<?
}
?>
</select>
</label>
Area Name :
<label>
<select name="sarea" id="sarea" style = "width:150px" >
</select>
</label>
</form>
</body>
</html>
|
|
|
|
|
Date :
2012-07-17 11:54:55 |
By :
iswpyknewz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จัดไปจร้า
Code (PHP)
<?php
/*** By Weerachai Nukitram ***/
/*** http://www.ThaiCreate.Com ***/
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("thailand");
@mysql_query("SET NAMES UTF8");
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>ThaiCreate.Com ListMenu</title>
<script language = "JavaScript">
//**** List Amphur (Start) ***//
function ListAmphur(SelectValue)
{
frmMain.ddlAmphur.length = 0
//*** Insert null Default Value ***//
var myOption = new Option('','')
frmMain.ddlAmphur.options[frmMain.ddlAmphur.length]= myOption
<?
$intRows = 0;
$strSQL = "SELECT * FROM amphur ORDER BY AMPHUR_ID ASC ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$intRows = 0;
while($objResult = mysql_fetch_array($objQuery))
{
$intRows++;
?>
x = <?=$intRows;?>;
mySubList = new Array();
strGroup = <?=$objResult["PROVINCE_ID"];?>;
strValue = "<?=$objResult["AMPHUR_ID"];?>";
strItem = "<?=$objResult["AMPHUR_NAME"];?>";
mySubList[x,0] = strItem;
mySubList[x,1] = strGroup;
mySubList[x,2] = strValue;
if (mySubList[x,1] == SelectValue){
var myOption = new Option(mySubList[x,0], mySubList[x,2])
frmMain.ddlAmphur.options[frmMain.ddlAmphur.length]= myOption
}
<?
}
?>
}
//**** List Amphur (End) ***//
</script>
</head>
<form name="frmMain" action="" method="post">
Province
<select id="ddlProvince" name="ddlProvince" onChange = "ListAmphur(this.value)">
<option selected value=""></option>
<?
$strSQL = "SELECT * FROM province ORDER BY PROVINCE_ID ASC ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
while($objResult = mysql_fetch_array($objQuery))
{
?>
<option value="<?=$objResult["PROVINCE_ID"];?>"><?=$objResult["PROVINCE_NAME"];?></option>
<?
}
?>
</select>
Amphur
<select id="ddlAmphur" name="ddlAmphur" style="width:200px"></select>
</form>
</body>
</html>
<?
mysql_close($objConnect);
?>
|
|
|
|
|
Date :
2012-07-17 12:01:43 |
By :
Thoshilo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ของคุณมันผิดตั้งแต่อ้าง form บันทัดที่24ครับ ตรง frmMain.ddlProvince.options[form1.sarea.length]= myOption
ใช้ form1.sarea.options แทน frmMain.ddlProvince.options
|
|
|
|
|
Date :
2012-07-17 12:06:23 |
By :
Thoshilo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ่อออ ขอบคุณค่ะ เหมือนจะได้แล้วแต่ก็ยังไม่ได้ 555
อยากจะถามว่า ข้างใน function Listamphur ภายใน loop while($objResult = mysql_fetch_array($objQuery))
มันทำงานยังไงหรอค่ะ
|
|
|
|
|
Date :
2012-07-17 12:17:16 |
By :
iswpyknewz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
while($objResult = mysql_fetch_array($objQuery))
ตรงนี้ก็คือการfetch_array ข้อมูลที่เรา Query มาเก็บไว้ใน$objResultไงครับ แล้วก็คำนำค่าข้อมูลแต่ละฟิลที่เรากำหนดเก็บลงตัวแปลและทำ
การเปลี่ยนเทียบmySubList[x,1] == SelectValue เมื่อถูกตามเงื่อนไขก็ให้แสดง strItem ตาม strValue จบ
|
|
|
|
|
Date :
2012-07-17 12:45:13 |
By :
Thoshilo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เข้าใจแล้วค่ะ ^^ ได้แล้ววววว ขอบคุณมากๆๆๆ เลยค่า >.<
|
ประวัติการแก้ไข 2012-07-17 14:19:03
|
|
|
|
Date :
2012-07-17 14:04:01 |
By :
iswpyknewz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มีคำถามเพิ่มเติมอ่าค่ะ ถ้าต้องการให้มันแสดงค่า PROVINCE_ID กับ AMPHUR_ID ของที่เราเลือกอ่าค่ะ
|
|
|
|
|
Date :
2012-07-18 11:34:36 |
By :
iswpyknewz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|