|
|
|
list box 2 ชั้น ช่วยดู code ให้หน่อยครับ ต้องการหาค่าที่ยังไม่มีในฐานข้อมูลออกมาแสดงครับ |
|
|
|
|
|
|
|
จากรูปนะครับเมื่อเลือก ปีการศึกษาแล้ว ต้องการให้ขึ้นภาคเรียนที่ไม่มีในฐานข้อมูลอ่าครับต้องทำยังงัยครับ
ภาคเรียน มีแค่ 1 2 3 ไม่ได้จัดเก็บลงฐานข้อมูลไว้ก่อนดึงออกมาแสดงนะครับ
สมมุติว่า ปี 2553 มี ภาคเรียน 1 2 อยู่ในฐานข้อมูลแล้ว ต้องการให้มันแสดง ภาคเรียนที่ 3 อย่างเดียวอ่าครับ
หรือ ปี 2554 ยังไม่มี ภาคเรียนก็ ต้องการให้มันแสดงค่า 1 2 3 แบบนี้อ่าครับ พอจะช่วยได้ไหมครับ
ขอบคุณล่วงหน้าครับ
Code (PHP)
<script language = "JavaScript">
//**** Listterm (Start) ***//
function Listterm(SelectValue)
{
frmMain.term.length = 0
//*** Insert null Default Value ***//
var myOption = new Option('--- ภาคเรียน ---','')
frmMain.term.options[frmMain.term.length]= myOption
<?
$intRows = 0;
$strSQL = "SELECT * FROM subject_year ";
$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["year"];?>;
strItem = "<?=$objResult["term"];?>";
mySubList[x,0] = strItem;
mySubList[x,1] = strGroup;
if (mySubList[x,1] == SelectValue){
if (strItem==1) {
mySubList[x,2] = 2;
mySubList[x,3] = 3;
}
else if (strItem==2) {
mySubList[x,2] = 1;
mySubList[x,3] = 3;
}
var myOption = new Option(mySubList[x,2])
frmMain.term.options[frmMain.term.length]= myOption
var myOption = new Option(mySubList[x,3])
frmMain.term.options[frmMain.term.length]= myOption
}
<?
}
?>
}
//**** Listterm (End) ***//
</script>
ตัวฟังก์ชั่นอ้างอิงจาก https://www.thaicreate.com/community/dependant-listmenu-dropdownlist.html
Tag : PHP, MySQL, JavaScript, Ajax, jQuery
|
|
|
|
|
|
Date :
2010-10-14 13:58:33 |
By :
sansurn |
View :
1342 |
Reply :
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
select ฟิลล์ภาคเรียน from ตาราง where ปีการศึกษา='ค่าที่ได้จาก listbox ปีการศึกษา' and ฟิลล์ภาคเรียน NOT IN(1,2,3)
ลองเอา query ตรงนี้ไปปรับดูน่ะครับ
|
|
|
|
|
Date :
2010-10-14 15:06:40 |
By :
iieszz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก็ where สิครับ ก็เอาค่าจาก option value ของ listbox มาก็ได้
หรือไมก็อีกวิธีนะครับ ก็ทำการ เช็คข้อมูลจาก db ว่ามีอยู่หรือป่าวเช่น ถ้ามี 1 อยู่ ก็โช 2 3 4 ประมาณนี้นะครับ
|
|
|
|
|
Date :
2010-10-14 15:08:00 |
By :
kanchen |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เราติดอยู่เหมือนกัน เปลี่ยนชื่อ DB กับตัวแปลแล้วไม่ขึ้นเลยเซงอยู่ติดมา 2 วันแล้ว
|
|
|
|
|
Date :
2010-10-14 15:22:30 |
By :
ziix |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองทำดูแล้วนะครับ
ต้องเช็คเงื่อนไขแยอะมากครับ
1.ถ้ามี 1 ในฐานข้อมูล แสดง 2 และ 3
2.ถ้ามี 2 ในฐานข้อมูล แสดง 1 และ 3
3.ถ้ามี 3 ในฐานข้อมูล แสดง 1 และ 2
4.ถ้ามี 1 และ 2 แสดง 3
5.ถ้ามี 1 และ 3 แสดง 2
6.ถ้ามี 2 และ 3 แสดง 1
7.ถ้ามี 1 2 3 ไม่แสดง
พอจะมีวิธีง่ายกว่านี้ไหมครับ
|
ประวัติการแก้ไข 2010-10-14 17:36:05 2010-10-14 17:50:20
|
|
|
|
Date :
2010-10-14 17:34:59 |
By :
sansurn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|