พบกับบทความเกี่ยวกับคอมพิวเตอร์และ programming ได้ที่ http://articles.modoeye.com
PHP development / ขอวิธีทำ Listbox แบบสองชั้นด้วยครับ Webmaster
THXiLL
Mon 29 Jan 2007 17:45:27

ก่อนอื่นต้องขอชมท่าน Webmaster ก่อนนะครับ ว่าขยันตอบกระทู้มาก ๆ ผมไม่เคยเห็นเว็บมาสเตอร์ที่ไหนมาตอบกระทู้ทุกกระทู้เหมือนที่นี่เลยครับ แล้วตอบแบบไม่ทิ้งด้วย ถ้ายังทำไม่ได้ก็จะหาวิธีทำจนทำได้ ขอบอกว่าสุดยอดจริง ๆ เลยครับ ผมเข้ามาที่นี่เป็นวันแรกครับ ที่รู้จักก็เพราะเข้าไปในบอร์ด PHP ของ Thaidev.com ก็เห็นมีคนตอบกระทู้(คาดว่าเป็น Webmaster ที่นี่)แล้วมีลิงค์ของเว็บนี้อยู่ก็เลยลองเข้ามาดู ปรากฏว่ารู้สึกอบอุ่นยังไงไม่รู้ครับ เหมือนกับว่า Webmaster ดูแลทุกคนที่เข้ามาถามเป็นอย่างดีเลย ผมไม่ได้ยกยอ หรือ อะไรหรอกนะครับ อันนี้รู้สึกจากใจจริง ๆ ครับ

แต่วันนี้ก็มีปัญหาว่า ผมจะทำ Listbox แบบ 2-3 ชั้น คือ  เอาง่าย ๆ นะครับ ถ้าเราเลืิอกจังหวัดใน Listbox แรก แล้ว Listbox ที่ 2 ก็จะมีเฉพาะชื่ออำเภอในจังหวัดนั้น แล้วพอเราเลือกอำเภอใน Listbox ที่ 2 แล้ว Listbox ที่ 3 ก็จะมีเฉพาะชื่อตำบลในอำเภอนั้นน่ะครับ ไม่ทราบว่าจะเขียนอย่างไรครับ ผมใช้ PHP ครับ

และจากการที่ผมไปค้นหามาก็เจอเหมือนกัน แต่ไม่เข้าใจเลยซักอันครับ เช่นลิงค์ด้านล่างที่ผมเอามาให้ดูครับลองทำตามแล้ว ไม่รู้เรื่องเลยครับ
อยากจะขอให้ Webmaster ช่วยแนะนำด้วยครับ

list menu 2 ชั้น โดยใช้ javascript กับ php เมื่อเลือกอำเภอ จะแสดงตำบลในอำเภอนั้น

Administrator
Mon 29 Jan 2007 21:30:24
ลองอ่านที่นี่ดูก่อนนะครับ
http://forum.modoeye.com/module31-38.html
แล้วลองไปประยุกต์ดูครับ ไม่ได้อย่างไรลองถามดูอีกทีครับ
ปล. ทางทีมงานขอบคุณสำหรับคำชมครับ
THXiLL
Mon 29 Jan 2007 22:31:33

ขอบคุณท่าน Webmaster มาก ๆ ครับ จะลองทำดูก่อนนะครับ ถ้ามีปัญหา ก็จะมาถามในกระทู้นี้ต่อครับ

THXiLL
Tue 30 Jan 2007 00:07:47

มาแล้วครับ ปัญหาของผมคือผมสงสัยว่า PHP สามารถเขียนไว้ใน Tag Javascript ได้ด้วยหรอครับ ผมลองเขียนแบบนี้

<script language=javascript type=text/javascript >
   
    alert("hello");
   
    <?php
        echo "This message from php";
    ?>

</script>

Javascript มันทำงานนะครับ ลองดูแล้วก็มีกล่อง Alert ขึ้นมา แต่ว่าคำสั่ง PHP ไม่ทำงานครับ หน้าเว็บเพจขาวสะอาดเลยครับ ซึ่งปกติมันจะต้องมีข้อความว่า This message from php ใช่ไหม่ครับ แต่นี่มันไม่มีเลยครับ ไม่ทราบว่าต้องเขียนอย่างไร หรือแก้ไขอย่างไรครับ

Administrator
Tue 30 Jan 2007 00:17:57
คุณไปสั่งให้มันเขียนลงระหว่าง tag script ซึ่ง browser มันไม่ render อยู่แล้วครับ ลอง view source ดูครับมันก็จะมีคำนั้นอยู่ใน tag script ครับ
THXiLL
Tue 30 Jan 2007 00:46:55
 ตารางฐานข้อมูลครับ      
 Subj_code Subj_name
Term
Class
 0001 ภาษาไทย
1
it1
 0002 ภาษาอังกฤษ
1
gp1
 0003 ภาษาจีน
2
it1

Subj_code คือ รหัสวิชา Subj_name คือ ชื่อวิชา Term คือ ภาคเรียน Class คือ ห้องที่เรียนวิชานี้

คืออย่างนี้ครับขอเรียกว่าพี่แระกัน ผมต้องการเอาข้อมูลจาก MySQL มาสร้างเป็น Listbox คือ Listbox รายวิชาครับ โดยรายละเอียดมีดังนี้

Listbox แรก เป็นห้อง

<option value='it1'>ปวส.1 เทคโนฯ</option>
<option value='gp1'>ปวส.1 กราฟิกส์</option>

Listbox ที่ 2 เป็นภาคเรียน

<option value='1'>1</option>
<option value='2'>2</option>

Listbox ที่ 3 เป็นรายวิชา โดย Listbox นี้จะสัมพันธ์กับ Listbox ที่ 1 และ 2 ครับ เช่น ถ้าเราเลือก ปวส.1 เทคโนฯ และเลือกภาคเรียนที่ 2 Listbox รายวิชาก็จะแสดงเฉพาะวิชาที่ ปวส.1 เทคโนฯ ภาคเรียนที่ 2 ออกมาครับ พี่พอจะเข้าใจมั้ยครับ

Administrator
Tue 30 Jan 2007 01:08:26
ครับ สามารถทำตามลิงค์ที่ให้ไปได้เลยครับ เพียงแต่คุณยังไม่ค่อยเข้าใจในการเอา php มาใช้ใน javascript ครับ

คุณลองเอาโค๊ดตามที่ผมยกตัวอย่างไว้นั้นไปทดลองดูครับ แล้วลองเขียนเป็นค่าในแบบ static ที่คุณต้องการก่อนครับ ลองทำการทดลองพอได้ตามต้องการแล้ว ก็ค่อยเขียนให้เอาค่าเหล่านั้นออกมาจากฐานข้อมูล

php ไม่ว่าคุณจะสั่งให้มัน echo ตรงส่วนใด ก็จะมีตัวอักษรอยู่ในส่วนนั้นๆ

หลังจากที่คุณเขียนโค๊ดเป็น static ได้แล้วที่เหลือคุณเพียงเขียน php ให้มันได้ source code ที่เหมือนกับ code static ก่อนหน้าเท่านั้นครับ

ผมคงได้แต่แนะนำแบบนี้ครับเนื่องจากคุณต้องทำความเข้าใจ javascript ก่อน ส่วนตัวแดงนั้นเป็นสิ่งที่มักจะลืมทำให้หลงทางครับ
THXiLL
Tue 30 Jan 2007 01:19:14

ขอบคุณมาก ๆ ครับพี่ แต่บอกตรง ๆ เลยว่าผมไม่ค่อยรู้เรื่อง Javascript เลยครับ ดู Code บางทีก็ไม่เข้าใจ แต่ยังไงก็จะลองทำตามดูครับ

THXiLL
THXiLL
Tue 30 Jan 2007 17:46:14

รบกวนเว็บมาสเตอร์ช่วย debug code ให้หน่อยครับ ถ้าคอมเม้นว่าอะไรมันคืออะไรด้วยก็ได้ครับ

<html>
<head><title></title>

<script type=text/javascript >
 var arrItems = new Array();
 var arrItemsGrp = new Array();
 var arrItemValue = new Array();
 var arrItems2 = new Array();
 var arrItemsGrp2 = new Array();
 var arrItemValue2 = new Array();
<?php
 $host = "localhost";
 $user = "root";
 $pass = "123456";
 $dbname ="test";
 $sql11= "select * from tambon";
 $con = mysql_connect($host,$user,$pass,"SET NAMES tis620") or die("can't connect host");
 $db = mysql_db_query($dbname,"SET NAMES tis620") or die("cant' select data");
  $result11=mysql_query($sql11,$con) or die("can't operate sql command");
 $x=0;
 while($row11=mysql_fetch_row($result11))
 {
  echo "x=".$x;
  $aaa=$row11[2];
  $tbn=$row11[1];
  $tbi=$row11[0];
  echo "a=".$aaa;
  echo "b='".$tbn;
  echo "c=".$tbi;
  $x=$x+1;
?>
  arrItems2[x]=b;
  arrItemsGrp2[x]=a;
  arrItemValue2[x]=c;
<?php
   }
 ?>
function selectChange(control, controlToPopulate, ItemArray, GroupArray)
{
    var myEle ;
    var x ;
    for (var q=controlToPopulate.options.length;q>=0;q--) controlToPopulate.options[q]=null;
    myEle = document.createElement("option") ;
    myEle.value = " ";
    myEle.text = " -- เลือกอำเภอ/เขต -- " ;
    controlToPopulate.add(myEle) ;
    for ( x = 0 ; x < ItemArray.length  ; x++ )
   {
   if ( GroupArray[x] == control.value )
  {
    myEle = document.createElement("option") ;
    myEle.value = arrItemValue[x];
    myEle.text = ItemArray[x] ;
    controlToPopulate.add(myEle) ;
  }
   }
  controlToPopulate.focus();
 }

 function selectChange2(control2, controlToPopulate2, ItemArray2, GroupArray2)
{
    var myEle ;
    var x ;
    for (var q=controlToPopulate2.options.length;q>=0;q--) controlToPopulate2.options[q]=null;
    myEle = document.createElement("option") ;
    myEle.value = " ";
    myEle.text = " -- เลือกตำบล/แขวง -- " ;
    controlToPopulate2.add(myEle) ;
    for ( x = 0 ; x < ItemArray2.length  ; x++ )
   {
   if ( GroupArray2[x] == control2.value )
  {
    myEle = document.createElement("option") ;
    myEle.value = arrItemValue2[x];
    myEle.text = ItemArray2[x] ;
    controlToPopulate2.add(myEle) ;
  }
   }
  controlToPopulate2.focus();
 }
</script>


</head>
<body>
<!---เมื่อ ได้ javascript ที่เก็บข้อมูล จากdatabase ไว้ในตัวแปลของ javascript แล้ว ก็ ถึง เวลานำไปใช้ล่ะครับ
อันนี้เป็น เลือก อำเภอ --->
<form name='form1'>
<select name="home_amph" id="h_amph" size="1" style="width: 200px;" class="fieldselect" onchange='selectChange2(this,form1.home_tumbon, arrItems2, arrItemsGrp2);document.getElementById("h_amph").value=document.getElementById("h_amph").options[document.getElementById("h_amph").selectedIndex].text;'>
   <?php
 $host = "localhost";
 $user = "root";
 $pass = "123456";
 $dbname ="test";
 $con = mysql_connect($host,$user,$pass,"SET NAMES tis620") or die("can't connect host");
 $db = mysql_db_query($dbname,"SET NAMES tis620") or die("cant' select data");
     $sql1= "select * from ampid";
      $result1=mysql_query($sql1,$con);
  while($row1=mysql_fetch_row($result1)) {
     echo"<option value=".$row1[0].">".$row1[1]."</option>";
}
   ?>

<!---เลือกกตำบล ในอำเภอนั้นๆ--->
   <select name="home_tumbon" size="1" class="fieldselect" id="home_tumbon" style="width: 180px;" onChange='document.getElementById("h_tumbon").value=document.getElementById("home_tumbon").options[document.getElementById("home_tumbon").selectedIndex].text;'>
            </select>
 </form>   
</body>
</html>

Administrator
Tue 30 Jan 2007 19:47:30
โค๊ดต่างๆเขาก็ comment ไว้แล้วครับ เป็นการสร้าง dynamic select จาก php+mysql ซึ่งโค๊ดที่ได้ก็จะคล้ายๆกับตัวอย่างที่ผมลิงค์ให้ดูนั่นล่ะครับ

ผมไม่ทราบว่าคุณอ่านโค๊ดได้เข้าใจมากน้อยเท่าใด จึงไม่สามารถ comment ลงไปได้

หลักๆคือเขามี table ที่เก็บรายชื่อตำบล, อำเภอ, จังหวัด เขาก็ query ออกมาใส่ select input เท่านั้น เพียงแต่ทำในรูปแบบของ javascript คุณอาจจะงงว่ามันทำงานอย่างไร ผมถึงแนะนำว่าให้ลองอ่านตัวอย่างที่ผมลิงค์ให้ก่อน ให้เข้าใจการทำงานของ javascript เพื่อใช้ในการสร้าง dynamic content ครับ

อาจจะดูใจดำไปหน่อยที่ไม่บอกอะไรเลยให้ไปอ่านเอาเอง สิ่งที่ทีมงานต้องการในการเปิด forum แห่งนี้อาจจะไม่เหมือนที่อื่นๆคือ ผมให้ตัวอย่างเป็น guideline ให้ทำเข้าใจเพื่อเอาไป apply ไม่เช่นนั้นก็จะไม่สามารถแก้ปัญหาที่เกิดขึ้นคล้ายๆกันได้ครับ

ผมอยากให้คุณ copy code จากตัวอย่างไปทำการทดลอง เปลี่ยนโน่นเปลี่ยนนี่ดูครับ error อะไรก็มีโค๊ดต้นฉบับ เอาไปทดลองได้อีกเมื่อเข้าใจการทำงานแล้วคุณก็เขียน php ให้แสดงโค๊ด javascript ตามที่ต้องการได้ครับ อีกอย่างถ้าไม่มี Firefox แนะนำให้โหลดมาใช้ครับเนื่องจาก Firefox ช่วยได้เยอะในการ Debug Javascript และถ้าคุณต้องการเขียนเว็บไซท์เพื่อใช้งานจริง คุณก็ควรทำการทดลองในหลายๆ browser ครับ

คุณคงรู้อยู่แล้วว่า Javasctipt ทำงานในฝั่ง Client โดยการเขียน script ฝังมาในโค๊ด HTML
และ HTML เป็น Markup Language เป็น TEXT ที่มีโครงสร้างจำเพาะใช้ browser ในการ render
และ php ทำงานบนฝั่ง Server โดยการเขียนโค๊ดแสดงผลเป็น TEXT

ถ้าเข้าใจสิ่งเหล่านี้ก็จะเข้าใจว่าภาษาใดควรอยู่ตรงไหน ผมถึงบอกว่าลอง javascript ให้เข้าใจแล้วเขียน php ให้ได้โค๊ดตามต้องการครับ

การทำงานของ javascript นั้นอาจจะเข้าใจยากหน่อยเนื่องจาก browser จะไม่ทำการ render แต่ก็มีหลายวิธีในการ debug คล้ายๆกับที่ทำใน php ครับ เมื่อ browser ไม่ render บางคำสั่งในหน้าแสดงผล สิ่งที่คุณควรดูคือ source html ที่ browser ได้รับครับ

เช่น
<script language="javascript" type="text/javascript">
function getObj(id){ return document.all?document.all[id]:document.getElelmentById(id); }
function updateCombo(obj){ obj.combo2.options.length=0; switch(obj.combo1.value){ <? for($i=1; $i < 11; $i++){ echo "case "".$i."": "; for($j=0; $j < ($i + 10); $j++){ echo "obj.combo2.options[$j] = new Option('".$j."','".$j."');"; } echo "break;"; } ?> } }
</script>
<form>
<select name="combo1" onchange="updateCombo(this.form);"><? for($i=1; $i < 11; $i++){ echo "<option value="".$i."">".$i."</option>"; } ?></select>
<select name="combo2"></select>
</form>
ข้างบนนี้เป็นการสร้าง dynamic select input เช่นเดียวกัน php+javascript แต่เป็นการสร้างจากค่าที่ผมตั้งขึ้น loop สร้างขึ้นมา ลองทดลองอ่านโค๊ดที่มันส่งมายัง browser ดูครับ จากนั้นเปลี่ยน loop ต่างๆเป็น php+mysql เท่านั้เอง
THXiLL
THXiLL
Tue 30 Jan 2007 19:58:22
ขอบคุณมาก ๆ ครับ ที่เข้ามาชี้แจงให้เข้าใจ ตอนนี้ผมก็กำลังนั่งแกะโค้ดตัวที่ผมได้เอามาให้ดูนั่นแหละครับ แต่ยังไม่เข้าใจหลาย ๆ คำสั่งครับ เช่น
document.getElementById("h_tumbon").value=document.getElementById("home_tumbon").options[document.getElementById("home_tumbon").selectedIndex].text;'>  ผมสงสัยว่าบรรทัดนี้หมายความว่าอย่างไรครับ แล้วก็การส่ง paramiter ไปให้ฟังก์ชั่นโดยใช้คำว่า this มันหมายความว่าอย่างไรครับ แล้วค่าที่ส่งไปให้มันมีรายละเอียดอะไรบ้างครับ
Administrator
Tue 30 Jan 2007 22:40:17
getElelmentById() เป็นการหา element บนเอกสารที่มี id ตามที่ระบุ ถ้ามีก็จะคืนค่ามาเป็น object ที่มี id นั้นๆ
โค๊ดข้างบนจึงเป็นการ set ค่าให้กับ object ที่มี id "h_tumbon" เป็นค่าที่เลือกไว้ใน object ที่มี id "home_tumbon"

this เป็นคำสงวนในการเขียนโปรแกรม แบบ OOP ซึ่ง javascript ก็เป็น OOP ซึ่ง this ถูกใช้ใน object ใดๆหมายถึงตัวมันเองครับ

ไม่ทราบว่าได้ทดลอง run หรือยังครับ
thxill
thxill
Wed 31 Jan 2007 13:21:00
ตอนนี้กำลังหัดทำอยู่ครับพี่ แต่ก็ยังไม่ค่อยเข้าใจซักเท่าไร แต่ผมก็เริ่มจากวิธีการที่มีอยู่ใน link ที่พี่ให้อ่ะครับ ทำตามไปเรื่อย ๆ ตอนนี้ก็ได้แล้วครับ พอเราคลิกมันก็เปลี่ยนค่าให้แล้ว แต่ยังไม่ได้มีการดึงข้อมูลจากฐานข้อมูลขึ้นมาแสดงเลยครับ ว่าจะทำอยู่
THXiLL
Wed 31 Jan 2007 17:06:41
รบกวนพี่ช่วยดู code ให้หน่อยครับ ไม่รู้ว่าผิดตรงไหน ทีแรกนะครับ ผมเขียนแค่ให้มันมีแต่ function ที่ใช้สำหรับเปลี่ยนค่า selectbox อย่างเดียวมันรันได้ครับ ใช้ได้ด้วยลองแล้ว แต่พอผมเขียนให้มันดึงข้อมูลจาก mysql ปุ๊บ Function ที่เคยใช้ได้ มันกลับเป็นว่าใช้ไม่ได้ซะงั้น พอลอง comment ส่วนที่เป็น code PHP แล้วลอง Run ดูก็ปรากฎว่าใช้ได้เหมืิอนเดิม ผมเลยสันนิฐานว่าเกิดจาก code ที่ผมเขียนเข้าไปใหม่ ผมก็ลองแก้ดู แต่ก็ปรากฎว่าไม่หายครับ พอ View Source ใน IE ดู มันก็มีข้อมูลออกมาจากฐานข้อมูลนะครับ มัน select ได้ครับ แต่ไม่รู้ผิดตรงไหน function ใช้ไม่ได้ งงเลยผมอ่ะ ยังไงขอให้พี่ช่วย Debug code ให้หน่อยนะครับ ผมนั่งลองทำมา 3 วัน ๆ นี้แล้วครับ ส่วนที่เป็นสีแดงคือ code ที่ผมเขียนเข้าไปทีหลังครับ ไอ้ตัวนี้แหละครับ ที่ทำให้ function ที่เคยใช้ได้กลับใช้ไม่ได้น่ะครับ สีน้ำเงินคือ function ที่ผมเขียนขึ้นเอง แล้วก็ใช้ได้ด้วยครับ
<html>
<head><title></title>
</head>
<script language="Javascript" type="text/javascript">
    var subj_code = new Array();
    var subj_name = new Array();
    var teach_code = new Array();
    var classs = new Array();
    var x=0;
   
    <?php
    $host = "localhost";    $user = "root";    $pass = "123456";  $dbname ="student";
   
    $sql_select= "select * from subject_it2";
   
    $con = mysql_connect($host,$user,$pass,"SET NAMES tis620") or die("ไม่สามารถติดต่อโฮสต์ได้");
   
    $db = mysql_db_query($dbname,"SET NAMES tis620") or die("ไม่สามารถเลือกฐานข้อมูลได้");
   
    $result=mysql_query($sql_select,$con) or die("ไม่สามารถรันคำสั่ง SQL ได้");
   
    $x=0;
    while($data1=mysql_fetch_array($result))
    { //start while
        echo "x=".$x.";";
        $subj_code=$data1["subj_code"];
        $subj_name=$data1["subj_name"];
        $teach_code=$data1["teach_code"];
        $classs=$data1["class"];

        echo "subj_code_tmp=".$subj_code.";";
        echo "subj_name_tmp=".$subj_name.";";
        echo "teach_code_tmp=".$teach_code.";";
        echo "class_tmp=".$classs.";";
   
        $x=$x+1;
?>
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
<?php
      } //end while
 ?>

function changeSelect2(obj)
{//start function
    var select1=obj.form.select1.value;
    var select2=obj.form.select2.value;
    var theform = obj.form;
    theform.select3.length = 0;
    if((select1="pm")&&(select2="3"))
       {
          theform.select3.options[0] = new Option('เทคโนโลยี','1');
          theform.select3.options[1] = new Option('ภาษาซี','2');
          theform.select3.options[2] = new Option('ภาษาHTML','3');
          theform.select3.disabled = false;
       }
}//end function
</script>
<body>

<form name="f">
<select name="select1">
    <option value="it">Option 1</option>
    <option value="gp">Option 2</option>
    <option value="pm">Option 3</option>
</select>
<select name="select2" onchange="changeSelect2(this)">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>
<select name="select3" disabled></select>
</form>
    </body>
</html> 
Administrator
Wed 31 Jan 2007 17:49:28
เท่าที่ดูน่าจะเป็นการทำงานหลักอยู่ที่ select2 ใช่ไหมครับ ส่วนโค๊ด php ผมดูแล้วงงๆครับ อย่างไรเอาโค๊ดที่เป็น html ดีกว่าครับ แบบนี้ผมไม่สามารถ debug ได้ครับ
THXiLL
Wed 31 Jan 2007 18:12:56
เท่าที่ดูน่าจะเป็นการทำงานหลักอยู่ที่ select2 ใช่ไหมครับ ตอบ ใช่ครับ การทำงานของมันก็คือให้เราเลือก select1 ก่อน แล้วเลือก select2 พอเราเลือก select2 ปุ๊บ มันก็จะมาเรียกฟังก์ชั่น(สีน้ำเงิน) ให้ทำงานครับ หน้าที่ของฟังก์ชั่นนี้ก็คือ Set ค่าให้กับ Select3 ครับ ซึ่งผมลองแล้วทำงานได้ครับ แต่พอใส่ Code ที่ผมบอกพี่เข้าไปแล้ว Function ไม่ทำงานเลยครับ ทั้ง ๆ ที่ไม่ได้ไปแก้อะไรเลยซักนิด และนี่คือผลจากการ run ครับพี่ อันนี้ผม View Soruce ใน IE มาให้เลยนะครับ ช่วยดูให้หน่อยครับว่าผิดตรงไหน
<html>
<head><title></title>
</head>
<script language="Javascript">
    var subj_code = new Array();
    var subj_name = new Array();
    var teach_code = new Array();
    var classs = new Array();
    x=0;
    
    subj_code_tmp=3000-1101;
    subj_name_tmp=ทักษะภาษาไทยเพื่ออาชีพ;
    teach_code_tmp=J001;
    class_tmp=it;
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
   
    x=1;
    subj_code_tmp=3000-1201;
    subj_name_tmp=ทักษะพัฒนาเพื่อภาษาอังกฤษ;
    teach_code_tmp=S001;
    class_tmp=it;
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
  
     x=2;
    subj_code_tmp=3000-1301;
    subj_name_tmp=ชีวิตและวัฒนธรรมไทย;
    teach_code_tmp=K001;
    class_tmp=it;
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;

    x=3;
    subj_code_tmp=3000-1601;
    subj_name_tmp=ห้องสมุดกับการรู้สารสนเทศ;
    teach_code_tmp=T001;
    class_tmp=it;
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
  
     x=4;
    subj_code_tmp=3901-1001;
    subj_name_tmp=เทคโนโลยีสารสนเทศ;
    teach_code_tmp=P001;
    class_tmp=it;
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
  
     x=5;
    subj_code_tmp=3901-1002;
    subj_name_tmp=การโปรแกรมคอมพิวเตอร์;
    teach_code_tmp=A001;
    class_tmp=it;   
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
   
    x=6;
    subj_code_tmp=3901-1003;
    subj_name_tmp=ระบบฐานข้อมูล;
    teach_code_tmp=P001;
    class_tmp=it;
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
   
    x=7;
    subj_code_tmp=3901-2001;
    subj_name_tmp=สถาปัตยกรรมคอมพิวเตอร์;
    teach_code_tmp=P001;
    class_tmp=it;   
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
   
    x=8;
    subj_code_tmp=3901-2005;
    subj_name_tmp=การออกแบบและพัฒนาเว็บ;
    teach_code_tmp=P001;
    class_tmp=it;
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
   
    x=9;
    subj_code_tmp=3901-2009;
    subj_name_tmp=การโปรแกรมเว็บ 1 ;
    teach_code_tmp=A001;
    class_tmp=it;
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;
   
    x=10;
    subj_code_tmp=3901-2002;
    subj_name_tmp=โครงสร้างข้อมูล;
    teach_code_tmp=A001;
    class_tmp=it;
        subj_code[x]=subj_code_tmp;
        subj_name[x] = subj_name_tmp;
        teach_code[x] = teach_code_tmp;
        classs[x] = class_tmp;

function changeSelect2(obj)
{
    var select1=obj.form.select1.value;
    var select3=obj.form.select3.value;
    var theform = obj.form;
    theform.select2.length = 0;
    if((select1="pm")&&(select3="3"))
       {
          theform.select2.options[0] = new Option('เทคโนโลยี','1');
          theform.select2.options[1] = new Option('2','ภาษาซี');
          theform.select2.options[2] = new Option('3','ภาษาHTML');
          theform.select2.disabled = false;
       }
}
</script>
<body>

<form name="f">
<select name="select1">
    <option value="it">Option 1</option>
    <option value="gp">Option 2</option>
    <option value="pm">Option 3</option>
</select>
<select name="select3" onchange="changeSelect2(this)">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>
<select name="select2" disabled></select>
</form>


</body>
</html>
THXiLL
Wed 31 Jan 2007 18:39:47
ผ่านแล้วครับพี่ มันผิดที่บรรทัดนี้ครับ subj_name_tmp=การโปรแกรมเว็บ 1 ; เลขหนึ่งมันไม่ติดกับข้อความครับ มันก็เลยเป็นตัวเลข มันก็เลย error พอผมเข้าไปแก้ไขใน ฐานข้อมูล มันก็เลยได้เลยครับ Function ของผมกลับมาใช้ได้แล้วครับผม ขอบคุณพี่มาก ๆ เลยนะครับ แต่ผมคิดว่าผมต้องเจอปัญหาอีกแน่ๆ ยังไงพี่ก็เข้ามาบ่อย ๆ นะครับ เผื่อผมมาถามอะไรในกระทู้นี้อีก ขี้เกียจขึ้นกระทู้ใหม่ เพราะมันซ้ำซากครับ 
boongum
boongum
Thu 20 Dec 2007 13:25:44
อยากรู้เรื่อง listbox ครับว่ามันสามารถดึงเอารายใช่ที่อยู่ในโฟล์เดอร์ที่เราชี้ไปได้ไหมครับเช่น
ในโฟล์เดอร์มีเพลงชื่อ นกน้อย.mp3 นกใหญ่.mp3 ครับแล้วให้ชื่ือพวกนี้ไปชึ้นที่ listbox ครับ และถ้าเราเอาเพลงไปใสในโฟล์เดอร์นั้นอีกให้ไปโชว์ที่ใน listbox ด้วยครับ
ทำได้ไหมครับ

ขอบคุณครับ
webmaster
webmaster
Thu 20 Dec 2007 14:46:30
ได้ครับ ก็เพียงใช้ php ส่งค่ารายชื่อเพลงออกมาเขียนเป็น option ใน listbox เท่านั้น
Reply
Name:
E-mail:
Home | Services | Forum | Classified | Directories | Support | Contact
ATOM feed RSS 0.9 feed RSS 1.0 feed RSS 2.0 feed
Copyright © 2005 - 2007 Modoeye.com, All Rights Reserved.
Disclaimer | Privacy policy | Term of Use | Term of Services
Valid XHTML Valid CSS! PHP: Hypertext Preprocessor MySQL database Apache Powered! FreeBSD Power to serve
Modoeye Sitemap Client login