ขอสอบถามและขอคำแนะนำเกี่ยวกับการ save ข้อมูล ลงฐานข้อมูล
insert into table (tablefield1,tablefield2,tablefield3) values (field1,field2,field3)
Date :
2010-10-15 09:16:10
By :
Dragons_first
แต่ว่ามันเหมือนต้องวนลูป ซ้อนกันน่ะค่ะ แบบนี้ต้องเขียนอย่างไงค่ะ เพราะแต่ละรอบมันก็จะมีจำนวนไม่เท่ากันน่ะค่ะ
Date :
2010-10-15 09:30:46
By :
วิ
1. ตารางนักศึกษา
2. ตารางวิชา
3. ตารางการลงทะเบียน
ตารางนักศึกษามีข้อมูลคือ A และ B
ตารางวิชามีข้อมูลคือ คณิต และ ภาษาไทย
ในหน้านี้คุณก็แอดข้อมุลไปที่ตารางการลงทะเบียน ไปว่า
1 นายเอ ลงทะเบียน คณิต
2 นายเอ ลงทะเบียน ภาษาไทย
3 นายบี ลงทะเบียน คณิต
แต่จุดที่จะสังเกตุยากคือ คุณให้กรอกข้อมูลคนได้สองคนพร้อมกัน คุณจะต้องแยกให้ออกว่าวิชาที่ลงทะเบียนเป็นของใคร
เพราะมีการเพิ่ม และลบในหน้านั้นเลย
ทำไมไม่ทำหน้าลงทะเบียนที่ละคนครับ ?
Date :
2010-10-15 09:54:07
By :
ไวยวิทย์
งงนิดหน่อย
ถ้าเลือก 1 บันทึกตารางแรก
ถ้าเลือก 2 บันทึกตารางที่สอง
ฐานข้อมูลมันดูแปลกๆ นะครับ
ฐานข้อมูลควรจะมีคร่าวๆ คือ 1. ฐานข้อมูลสำหรับนักเรียน 2. ฐานข้อมูลสำหรับวิชาที่ลงทะเบียน ทำให้สัมพันธ์กัน
หรือผมเข้าใจผิดหว่า...
ถ้าแบบฟอร์มนั้น ผมว่าดูไม่เรียบร้อยเลยครับ
ทำไม ไม่ทำให้คลิกรหัสนักศึกษา แล้วเด้งรายชื่อวิชา คนๆนั้น แบบจอเล็กๆ น่ารักและสะดวกกว่านะครับ
Date :
2010-10-15 09:54:29
By :
kingarcher
click เลือก นักศึกษา แล้วไปเพิ่มทีละคนดีกว่าครับ ง่ายกว่า
Date :
2010-10-15 09:54:34
By :
deawx
ตอนนี้ออกแบบเป็นสองตาราง
ตารางแรก จะมี
- รหัสนักศึกษา
- ชื่อนักศึกษา
- นามสกุล
ตารางที่สอง จะมี
- รหัสนักศึกษา
- รหัสวิชา
- ชื่อวิชา
- ราคา
แต่งงตอนวนรอบเก็บข้อมูลค่ะ ว่าจะต้องเขียน code อย่างไงค่ะ
Date :
2010-10-15 10:06:49
By :
วิ
พี่ ๆ ทุกคนค่ะ รบกวนช่วยแนะนำการเขียน code หน่อยค่ะ ว่าจะวนลูปอย่างไงค่ะ
Date :
2010-10-15 17:41:06
By :
วิ
ไม่มีใครมีคำแนะนำเลยหรอค่ะ
Date :
2010-10-16 00:17:49
By :
วิ
แนะนำเหมือนพี่เดี่ยวครับ
แสดงรายชื่อนักศึกษาแต่ละคน แล้วคลิกเข้าไปเพิ่มวิชาเข้าไปอีก step นึง เพิ่มวิชาจนกว่าจะพอใจหรือไม่ก็เพิ่มทีละหลายๆ วิชาเลยก็ได้
ออกแบบระบบแบบนี้เขียนยาก ใช้ยากด้วยนะผมว่า
Date :
2010-10-16 00:44:39
By :
PlaKriM
ตอนนี้เขียนได้ในระดับหนึ่งแล้วค่ะ ตอนนี้ save เข้าฐานข้อมูลได้แล้ว แต่ติดตรงที่ว่ามันยังวนเอาข้อมูลเข้าไม่ถูกต้องค่ะ
ี
ตอนนี้ติดว่า ถ้ามีการเพิ่มข้อมูลตรงการลงทะเบียนมีจำนวนแถวไม่เท่ากัน มันจะอิงจำนวนแถวสุดท้ายเสมอค่ะ
รบกวนช่วยดู code ให้หน่อยค่ะ ว่าจะต้องแก้ไขตรงไหนค่ะ ให้มันนับจำนวนแถวทั้งหมดของการลงทะเบียนน่ะค่ะ
ตัวอย่าง
ถ้านักเรียนคนที่ 1 ลงทะเบียน 2 วิชา ก็จะมีจำนวนแถวที่เพิ่มมา 2 แถว
ถ้านักเรียนคนที่ 2 ลงทะเบียน 1 วิชา ก็จะมีจำนวนแถวที่เพิ่มมา 1 แถว
มันก็จะวนจำนวนข้อมูลของคนแรกเข้าฐานข้อมูลไปแค่แถวเดียวค่ะ
แต่ถ้าจำนวนวิชาของคนที่สองมี 2 วิชา มันก็จะวนของแถวแรกเข้าฐานข้อมูลไป สองแถว
และวนของคนที่สอง ไปสองแถว แบบถูกต้องค่ะ
แบบนี้จะต้องแก้ไขอย่างไงค่ะ
for($i=1;$i<=$_POST["hdnLine"];$i++)
{
if($_POST["studentID$i"] != "")
{
$strSQLST = "INSERT INTO student ";
$strSQLS .="(studentID,SName,SSurname) ";
$strSQLST .="VALUES ";
$strSQLST .="('".$_POST["studentID$i"]."','".$_POST["SName$i"]."','".$_POST["SSurname$i"]."') ";
$objQuery = mssql_query($strSQLST) or die('MSSQL error: ' . mssql_get_last_message());
}
for($s=1;$s<=$_POST["num_rows"];$s++)
{
if($_POST['sregister'.$i.'subject'.$s] != "")
{
$strSQLSR = "INSERT INTO register ";
$strSQLSR .="(subjectID,subjectName,price) ";
$strSQLSR .="VALUES ";
$strSQLSR .="('".$_POST["studentID$i"]."', ";
$strSQLSR .="'".$_POST["sregister".$i."subjectID".$s]."','".$_POST["sregister".$i."subjectName".$s]."', ";
$strSQLSR .="'".$_POST["sregister".$i."price".$s]."') ";
$objQuerR = mssql_query($strSQLSR) or die('MSSQL error: ' . mssql_get_last_message());
}
}
}
Date :
2010-10-16 13:11:37
By :
วิ
เอาโค๊ดตัวฟอร์มมาด้วยซิครับ
Date :
2010-10-16 19:14:30
By :
PlaKriM
Load balance : Server 02