ช่วยหน่อยค่ะ ถามเรื่อง list เมนู 3 ชั้น

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ น่ะค่ะ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ

Moderator: phpbb, mindphp, ผู้ดูแลกระดาน

ตอบกลับโพส
meebear
phpBBThailand Newbie
phpBBThailand Newbie
โพสต์: 4
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

ช่วยหน่อยค่ะ ถามเรื่อง list เมนู 3 ชั้น

โพสต์ โดย meebear »

คือ หนูใช้ ฐานข้อมูล ที่มี 1 ตาราง ค่ะ มี ชื่อตารางว่า ass

ตัวอย่าง ตารางในฐาน น่ะค่ะ
id year term subject
1 2550 ต้น 610111
2 2550 ต้น 610112
3 2550 ปลาย 610113
4 2550 ปลาย 610114
5 2551 ต้น 610115
6 2551 ปลาย 610116

คือ หนู จะใช่ list 3 list
โดยมี list year,term,subject ที่สัมพันธ์ กัน ทำยังไง ช่วยที งานต้องส่งแล้ว ค่ะ

ขอบคุณค่ะ
mindphp
phpBBThailand VIP Members
phpBBThailand VIP Members
โพสต์: 2269
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00
ติดต่อ:

โพสต์ โดย mindphp »

3 ชั้นแบบไหนครับ สัมพันธ์ กันยังไง
สร้างไฟล์ pdf online
ท่องเที่ยว http://www.thailandhotelforums.com/" onclick="window.open(this.href);return false;
สอน php http://www.mindphp.com/" onclick="window.open(this.href);return false;
meebear
phpBBThailand Newbie
phpBBThailand Newbie
โพสต์: 4
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

โพสต์ โดย meebear »

แบบนี้ ค่ะ
สมมุติว่า ตาราง ชื่อ ass
id year term subject
1 2550 ต้น 610111
2 2550 ต้น 610112
3 2550 ปลาย 610113
4 2550 ปลาย 610114
5 2551 ต้น 610115
6 2551 ปลาย 610116
--------------------------------------------------------------------------------------------
<select name="year" size="1" id="year" >
<option value="" selected="selected">เลือกปีการศึกษา</option>
<?php
$sql_a="select id ,year from ass GROUP BY year ASC ";
$Query_a=mysql_query($sql_a) or die(mysql_error());
while ($dbarr_a = mysql_fetch_array($Query_a)){
$id= $dbarr_a["id"];
$year= $dbarr_a["year"];

?>
<option value="<?php echo $year;?>" ><?php echo $year;?></option>
<?
}
?>
</select>
-----------------------------------------------
<select name="term" size="1" id="term" >
<option value="" selected="selected">เลือกภาคการศึกษา</option>
<?php
$sql_b="select id ,term from ass GROUP BY term ASC ";
$Query_b=mysql_query($sql_b) or die(mysql_error());
while ($dbarr_b = mysql_fetch_array($Query_b)){
$id= $dbarr_b["id"];
$term= $dbarr_b["term"];

?>
<option value="<?php echo $term;?>" ><?php echo $term;?></option>
<?
}
?>
</select>
-------------------------------------------------------------------------


<select name="subject" size="1" id="subject" >
<option value="" selected="selected">เลือกรายวิชา</option>
<?php
$sql_c="select id ,subject from ass GROUP BY subject ASC ";
$Query_c=mysql_query($sql_n) or die(mysql_error());
while ($dbarr_c = mysql_fetch_array($Query_c)){
$id= $dbarr_c["id"];
$subject= $dbarr_c["subject"];

?>
<option value="<?php echo $subject;?>" ><?php echo $subject;?></option>
<?
}
?>
</select>
---------------------------------------------------

แบบนี้ค่ะ
ใน list ปีการศึกษา เรา ดึงฐานข้อมูล ของ ปีการศึกษา มา สมมุติ เลือก ปี 2550
ใน list ภาคการศึกษา ก็ จะมีข้อมูล ที่มีความสัมพันธ์ กับ list ปีการศึกษา คือ จะมีข้อมูล ต้น , ปลาย ดังตารางฐานข้อมูล
ใน list รายวิชา ก็จะมีข้อมูลความสัม กับ list ปีการศึกษา, list ภาคการศึกษา คือ จะมีข้อมูล610111,610112,610113,610114

แบบนี้ค่ะ ทำยังไงหรอ ค่ะ พอดี หนู มี แค่ 1 ตาราง สามารถ ทำได้ไหม ช่วยหน่อย ค่ะ จะส่งแล้ว

ขอบคุณค่ะ
ภาพประจำตัวสมาชิก
icphysics
phpBBThailand Full Member
phpBBThailand Full Member
โพสต์: 38
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00
ติดต่อ:

โพสต์ โดย icphysics »

ใส่เงือน ไข ลงในคำสั่ง sql ซิครับ
พูดคุย ปัญหา การหารายได้ ผ่านเน็ต
http://ptc.icphysics.com/webboard/SFM/index.php" onclick="window.open(this.href);return false;
เรื่องบ้านๆ สมาชิกกว่า 3 หมื่น
http://www.ecitepage.com" onclick="window.open(this.href);return false;
meebear
phpBBThailand Newbie
phpBBThailand Newbie
โพสต์: 4
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

ยังไง ค่ะ

โพสต์ โดย meebear »

ไม่ค่อย เก่งค่พ เพิ่งมา ลง วิชา นี้
twin
phpBBThailand Jr. Member
phpBBThailand Jr. Member
โพสต์: 28
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

โพสต์ โดย twin »

พี่น้องทั้งหลายช่วยกันหน่อยครับ เขียนรายละเอียดเพิ่มก็ดีครับ พอดีผมก็ใกล้เคียงที่จะใช้อยู่พอดีครับ ( อยากรู้บ้าง list 3 ชั้น Table เดียว แต่ใน Select ต้องเป็นค่าตัวแปรแทนข้อมุลที่ user ระบุมาน่ะครับ ไม่ใช่ชื่อฟิลด์ใน table
meebear
phpBBThailand Newbie
phpBBThailand Newbie
โพสต์: 4
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

โพสต์ โดย meebear »

ใช่เลย ค่ะ แบบ ที่ คุณ twin บอก เลย ค่ะ แบบเดียวกัน เลย user จะ กรอก ข้อมูลมา ลง ฐาน เวลาเราจะหา ข้อมูล ก็ จะ ทำ 3 list ค่ะ ช่วยหน่อยค่ะ
twin
phpBBThailand Jr. Member
phpBBThailand Jr. Member
โพสต์: 28
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

โพสต์ โดย twin »

เงื่อนไขจะเช็คเมื่อข้อมูลที่ users ส่งเข้ามาถูกต้อง ตาม Listbox 3 ตัว ว่าตรงกับ 3 field ใน Table เดียว (MySQL) หรือไม่ หากไม่ใช่ให้บอกว่า ไม่มีข้อมูล แต่ถ้าใช่ ให้แสดงรายละเอียดรายการออกมา (รายการที่แสดงออกมาอาจจะมี 1 หรือ 2 หรือ 3 ฯลฯ รายการแล้วแต่ข้อมูล)
เพิ่มเติม... แต่ละรายการที่ออกมาอาจจะสร้างเป็นลิงค์ไฟล์เพื่อดูรายละเอียดเพิ่ม เช่น สร้างลิงค์ที่ผลแสดงของฟิลด์ subject (รหัสวิชา) 610111 เมื่อคลิ๊กแล้วก็แสดงว่าเป็น ชื่อวิชาอะไร เช่น วิชาคณิตศาสตร์, ชั้นมัธยมศึกษา, ปี 1, ผู้แต่ง, ฯลฯ
พอดีตรงกันเลยครับคุณ meebear
เด๋วบ่ายจะมาต่อครับ เพราะเขียน คัดลอก ตัดต่อ อยู่ครับ ไม่รู้ใช้ได้ไหม ต้องให้เก่ง ๆ ในนี้แหละครับ (ไม่รู้จะช่วยเราเปล่า)
twin
phpBBThailand Jr. Member
phpBBThailand Jr. Member
โพสต์: 28
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

โพสต์ โดย twin »

ว่าไงครับ ท่าน mindphp ช่วยหน่อยครับ (ผมมือใหม่เข้าใจบ้าน แต่เขียนโค้ดไม่ออก)
twin
phpBBThailand Jr. Member
phpBBThailand Jr. Member
โพสต์: 28
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

โพสต์ โดย twin »

คุณ meebear
ผมติดตรงนี้มาประมาณ...(ไม่กล้าบอก เด๋วว่าโง่)
รอคนเก่งช่วยด้วย
ภาพประจำตัวสมาชิก
icphysics
phpBBThailand Full Member
phpBBThailand Full Member
โพสต์: 38
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00
ติดต่อ:

โพสต์ โดย icphysics »

ดีนะไม่ขอผม ง่ะๆ
ต้อง เขียนโค้ดให้ด้วย หรือครับ เนี่ย กำ ...... สงสารท่าน mindphp จริงๆ ผมเป็นสมาชิกที่นี่มานาน ไม่ค่อย เห็นใครช่วย ตอบ เลย ( ตกเว้นผม ง่ะ เป็นการตอบแทน ที่ ที่นี่เคยให้ความรู้ผม ) พอ เขียนพอเป็นต่างคนก็ต่างไปหาตัง เข้ากระเป๋าตัวเองกัน ไม่ค่อย ใครอยากจะมาตอบคนอื่น เหมือน ท่าน mindphp เลย (ผมก็เหมือนกัน แต่ถ้าว่างๆ ก็จะเข้ามาอ่าน อยู่บ่อยๆ) แต่ส่วน มากคำถามบอกได้เลยว่า งง ........
ขอแนะนำ หน่อย นะครับ ถ้าเป็นมือใหม่ก็ เริ่ม จากไรง่ายๆ ก่อน ครับ (คำสั่ง sql เนี่ย ควรเขียนเองเป็นดีที่สุดครับ) แล้ว ค่อยๆ ทำสิ่งที่ยากขี้นๆ
ประมาณ ว่า คลานแล้ว จะวิ่งเลย มันเป็นไปไม่ได้หรอกครับ
พูดคุย ปัญหา การหารายได้ ผ่านเน็ต
http://ptc.icphysics.com/webboard/SFM/index.php" onclick="window.open(this.href);return false;
เรื่องบ้านๆ สมาชิกกว่า 3 หมื่น
http://www.ecitepage.com" onclick="window.open(this.href);return false;
twin
phpBBThailand Jr. Member
phpBBThailand Jr. Member
โพสต์: 28
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

โพสต์ โดย twin »

ง่ะ ง่ะ เรียน...เพื่อทราบ ขอชี้แจงดังนี้ครับ
1.ผมมือใหม่ แต่ไม่ใช่เอาแต่ ไม่เขียนโค้ดเลย หรือรอแต่โค้ดได้มาแล้วสั่งรันแล้วใช้ได้ เพราะว่าโค้ดที่ได้นั้นผมต้องนำไปดัดแปลง ทั้งบางคำสั่ง บางคำ ฯลฯ ดังนั้นมือใหม่ก็เลยงง สั่งรันแล้วไม่ผ่าน ผิดไหมครับที่จะเข้ามาถาม แต่ไม่ผิดครับที่หลายท่านจะไม่ตอบ
2.ผมมิใช่นักโปรแกรมเมอร์รับโปรเจคแล้วหาตังส์ แต่เอาไปใช้ภายในที่ทำงานครับ ไม่มีเขียนออกนอกที่ทำงานครับ เพราะฝีมือไม่ถึง ถึงจะถึงก็คงไม่ ลองถาม ๆ ท่าน mindphp ดูน่ะครับถ้าจำผมได้
3.บางกระทู้ เห็นคำถามบางคำถามแล้ว เอ๊ะ เราก็ผ่านมาแล้วนี่นา (กว่าจะผ่านมาก็ลำบาก ใจเขาใจเรา) ก็สงสารคนถามที่อึดอัดใจรอคอยแต่คำถาม (เหมือนผมที่ผ่าน ๆ มา) และก็เห็นใจ มีท่าน mindphp ตอบอยู่คนเดียว ก็เลยช่วยตอบเพื่อลดภาระกันไป เช่น <form action=...
4.มือใหม่หลายคนผมคิดว่าอยากเขียนเองแหละ แต่คลำทางไม่ถูกก็ต้องมีผู้แนะนำก็จะดีขึ้น หรือตัวอย่าง และนำตัวอย่างไปดัดแปลง และก็ต้องเจอปัญหาก็คลำไป เมื่อคลำไปแล้วไม่เจอก็ต้องค้นหา ถาม ฯลฯ
5.ข้อสุดท้าย ยังไงก็ขอบคุณที่มาโพสต์
twin
phpBBThailand Jr. Member
phpBBThailand Jr. Member
โพสต์: 28
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

โพสต์ โดย twin »

คำสั่ง sql น่ะเขียนเสร็จแล้ว แต่มันไม่ผ่าน ก็เลยไม่รู้ว่าเป็นที่ตรงนี้หรือเปล่า เช่นตัวอย่าง
$sql="SELECT * FROM tbl_student WHERE year='$year' AND term='$term' AND subject='$subject' ORDER BY year, term";
เงื่อนไข WHERE AND AND หรือ WHERE OR OR ผมก็ไม่ทราบว่าผิดหรือถูก เพราะหาหนังสืออ่านแล้วมันก็ไม่มีวิธีนี้ มีแต่ต้องคำสั่งย่อยลงไป แต่จะค้นหาจาก string ไม่ได้...(งง งง)
mindphp
phpBBThailand VIP Members
phpBBThailand VIP Members
โพสต์: 2269
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00
ติดต่อ:

โพสต์ โดย mindphp »

โอ๊ะ โอ๋ ใจเย็นๆ ครับ ทุกท่าน คนไทยด้วยกันทั้งนั้น :-D
อย่าไปพูดถึงอาชีพกัน เลยครับ เอาเป็นว่ามีปัญหา อะไร หรือมี อะไรดีๆ ก็มาแลกเปลี่ยนกัน ดีกว่า ( เพราะผมก็ไม่ได้มีอาชีพตอบคำถามในเว็บบอร์ด นะครับ ง่ะๆ )
เงือนไข sql ที่ท่าน twin ตก มาก็ ถูกต้องแล้วครับ สำหรับ ทำเป็นเงื่อนไขสุดท้ายในการเรื่อง
ต้องลองเอา คำสั่ง sql ไป รัน ดู ว่า ได้ผลตามที่ต้องการหรือเปล่าแล้วเอามาใส่ ใน php
เช่น
SELECT * FROM tbl_student WHERE year='$year' AND term='$term' AND subject='$subject' ORDER BY year, term
ก็ echo ได้
SELECT * FROM tbl_student WHERE year='2008' AND term='ต้น' AND subject='***' ORDER BY year, term
เอาไปรันที่ phpmyadmin

เรื่องคำสั่ง sql ลองดูเพิ่มเติมที่นี่ครับ
http://www.meelink.com/webboard/data/3/0121-1.html
สร้างไฟล์ pdf online
ท่องเที่ยว http://www.thailandhotelforums.com/" onclick="window.open(this.href);return false;
สอน php http://www.mindphp.com/" onclick="window.open(this.href);return false;
twin
phpBBThailand Jr. Member
phpBBThailand Jr. Member
โพสต์: 28
ลงทะเบียนเมื่อ: 01 ม.ค. 1970, 07:00

โพสต์ โดย twin »

ก็ลองมาแล้วน่ะครับ และก็ผ่านแล้ว (แต่อย่างว่าแหล่ะมือใหม่ก็ไม่มั่นใจมันผ่านจริงไหม) เพราะสังเกตุดูไม่มี error (เวลา echo ใน phpmyadmin ต้องมี table จริงอยู่ด้วยน่ะ ถ้าไม่มีมันจะฟ้องว่าไม่มีเทเบิ้ลนั้นน่ะ)
คงต้องดูในส่วนอื่น ๆ อีกแหละว่าสั่งค่าถูกไหม จำเป็นคงต้องเอาโค้ดมาให้ดู
ตอบกลับโพส

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 230 และ บุคคลทั่วไป 0 ท่าน