ตอนนี้มีโปรเจคอยู่หนึ่งตัวฮะ
ต้องทำระบบข้อสอบ แบบสามารถเพิ่มฟอร์ม(ไม่จำกัดจำนวนข้อ) และเก็บข้อมูลของแต่ละข้อแบบวนลูป คล้ายๆกับการสร้างเกมทายใจของเว็บไซต์หลายๆเว็บนะฮะ
ต้องเขียนโค้ดเก็บข้อมูลยังไงฮะ ต้องลูบยังไงให้เก็บได้ทุกข้อ
ส่วนอีกเรื่องที่ยังไงสงสัยและแก้ไม่ได้คือ การกำหนดระยะ
เวลาของการทำข้อสอบ จะตรวจสอบ เวลาเริ่มต้น กับ เวลาสุดสิ้นยังไง
ต้องเก็บตัวแปรลงฐานข้อมูลอย่างไร และโค้ดสิ้นสุดอยู่ในลักษณะไหน รบกวนด้วยนะฮะ TvT
ข้อมูลเพิ่มเติมนะคะ
ข้ออธิบายส่วนแรกในเรื่องของข้อสอบออนไลน์เลยนะคะ
ตอนนี้ฟอร์ม และฐานข้อมูลพร้อมแล้ว ตัวระบบสามารถบันทึกข้อมูลได้
แต่จะบันทึกเพียงข้อเดียวค่ะ
ภาพของฟอร์ม และฐานข้อมูลค่ะ
http://www.mx7.com/view2/yUf7hBGh8P6RFOGn
http://www.mx7.com/view2/yUf3y7yVYhcYyKo8
ส่วนนี้คือโค้ดฟอร์มนะคะ
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้<form action="Add_test.php?Process=Add" method="post" name="forms" >
<div class='box-big'>
<div class='Title'>ข้อสอบ</div>
<div class='account'> </div>
<div class='account-2'>ชื่อของการสอบในครั้งนี้</div>
<div class='lable'> </div>
<!-- ชื่อข้อสอบห้วข้อ -->
<div class=''>
<input class="form-Question" type="text" name="Test_name" placeholder=" กรุณากรอกชื่อการสอบ">
</div>
<div class='line'></div>
<div class='multi-field-wrapper'>
<div class='multi-fields'>
<div class='multi-field'>
<div class='lable'>โจทย์ของคำถาม
</div>
<!-- ห้วข้อใหญ่ -->
<div class=''>
<input class='form-Question' type='text' name='Question' placeholder=' กรุณากรอกคำถาม'>
</div>
<div>
<div class='lable'> </div>
<div class=''> <!-- คำตอบที่ 1 -->
<input class='form-Answer' type='text' name='Choice1' placeholder=' กรุณากรอกคำตอบข้อที่ 1'>
</div>
<div class='lable'> </div>
<div class=''> <!-- คำตอบที่ 2 -->
<input class='form-Answer' type='text' name='Choice2' placeholder=' กรุณากรอกคำตอบข้อที่ 2'>
</div>
<div class='lable'> </div>
<div class=''> <!-- คำตอบที่ 3 -->
<input class='form-Answer' type='text' name='Choice3' placeholder=' กรุณากรอกคำตอบข้อที่ 3'>
</div>
<div class='lable'> </div>
<div class=''> <!-- คำตอบที่ 4 -->
<input class='form-Answer' type='text' name='Choice4' placeholder=' กรุณากรอกคำตอบข้อที่ 4'>
</div>
<!-- ข้อที่ถูกต้อง -->
<div class='lable'>ข้อที่ถูกต้อง</div>
<div class=''> <!-- คำตอบที่ 4 -->
<input class='form-correct' type='text' name='Answer' placeholder=' เฉลย'>
</div>
</div>
<!-- ปุ่มเพิ่มคำถามเซตใหม่ -->
<div class='lable'> </div>
<button type='button' class='button2 remove-field'>ลบข้อสอบ</button>
<div class='line'></div>
</div>
</div>
<div class='lable'> </div>
<div class=''>
<div class='account'>**ข้อสอบสามารถเพิ่มได้ไม่จำกัด</div>
</div>
<div class='lable'> </div>
<div class=''>
<button type="button" class="Green button1 add-field">เพิ่มข้อสอบ </button>
</div>
</div>
</div>
<script>
$('.multi-field-wrapper').each(function() {
var $wrapper = $('.multi-fields', this);
$(".add-field", $(this)).click(function(e) {
$('.multi-field:first-child', $wrapper).clone(true).appendTo($wrapper).find('input').val('').focus();
});
$('.multi-field .remove-field', $wrapper).click(function() {
if ($('.multi-field', $wrapper).length > 1)
$(this).parent('.multi-field').remove();
});
});
</script>
<div class='lable'> </div>
<div class='Green'>
<input name="Submit" id="Submit" type="Submit" class="button1" value="บันทึก" />
<input type="reset" class="button2" value="ล้างค่า" />
</div>
</form>
ด้านล่างนี้โค้ด INSERT INTO ค่ะ
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้<!-- Add Test -->
<? if ($Process == "Add") {
include("connect.php");
$Test_name =$_POST['Test_name'];
$Question =$_POST['Question'];
$Choice1 =$_POST['Choice1'];
$Choice2 =$_POST['Choice2'];
$Choice3 =$_POST['Choice3'];
$Choice4 =$_POST['Choice4'];
$Answer =$_POST['Answer'];
$new_id =mysql_result(mysql_query("Select Max(substr(test_id,-4))+1 as MaxID from test"),0,"MaxID");//เลือกเอาค่า id ที่มากที่สุดในฐานข้อมูลและบวก 1 เข้าไปด้วยเลย
if($new_id==''){ // ถ้าได้เป็นค่าว่าง หรือ null ก็แสดงว่ายังไม่มีข้อมูลในฐานข้อมูล
$test_id="TE0001";
}
else
{
$test_id="TE".sprintf("d",$new_id);//ถ้าไม่ใช่ค่าว่าง
}
//อัพโหลดไฟล์
$SQL_INSERT ="INSERT INTO test values('$test_id','$Test_name','$Question','$Choice1','$Choice2','$Choice3','$Choice4','$Answer')";
mysql_query("SET NAMES UTF8");
$result =mysql_query($SQL_INSERT);
$dbquery = mysql_db_query($dbname, $sql);
if(!$result){
echo "<script>alert('ไม่สามารถบันทึกข้อมูลได้ค่ะ')</script>";
}else{
echo "<script>alert('บันทึกข้อมูลเรียบร้อย')</script>";
echo "<script>window.location='javascript:history.go(-2)'</script>";
}
}
?>
<!-- end : Add Test -->
ตัวฟอร์มจะเพิ่มได้เรื่อยๆค่ะ แล้วแต่ผู้ออกข้อสอบ
$test_id จะรันอัตโนมัตินะคะ จขกท. ลองใส่คำสั่งลูปใน INSERT INTO แล้ว ก็ปรากฎว่าเก็บแค่ตัวเดียวเหมือนเดิมค่ะ จขกท. ต้องใช้คำสั่งอย่างไรคะ
ขอบคุณล่วงหน้าค่ะ
ขอคำปรึกษา php ในเรื่องของเวลา และบันทึกข้อมูลจากฟอร์มแบบวนลูป
ต้องทำระบบข้อสอบ แบบสามารถเพิ่มฟอร์ม(ไม่จำกัดจำนวนข้อ) และเก็บข้อมูลของแต่ละข้อแบบวนลูป คล้ายๆกับการสร้างเกมทายใจของเว็บไซต์หลายๆเว็บนะฮะ ต้องเขียนโค้ดเก็บข้อมูลยังไงฮะ ต้องลูบยังไงให้เก็บได้ทุกข้อ
ส่วนอีกเรื่องที่ยังไงสงสัยและแก้ไม่ได้คือ การกำหนดระยะเวลาของการทำข้อสอบ จะตรวจสอบ เวลาเริ่มต้น กับ เวลาสุดสิ้นยังไง ต้องเก็บตัวแปรลงฐานข้อมูลอย่างไร และโค้ดสิ้นสุดอยู่ในลักษณะไหน รบกวนด้วยนะฮะ TvT
ข้อมูลเพิ่มเติมนะคะ
ข้ออธิบายส่วนแรกในเรื่องของข้อสอบออนไลน์เลยนะคะ
ตอนนี้ฟอร์ม และฐานข้อมูลพร้อมแล้ว ตัวระบบสามารถบันทึกข้อมูลได้ แต่จะบันทึกเพียงข้อเดียวค่ะ
ภาพของฟอร์ม และฐานข้อมูลค่ะ
http://www.mx7.com/view2/yUf7hBGh8P6RFOGn
http://www.mx7.com/view2/yUf3y7yVYhcYyKo8
ส่วนนี้คือโค้ดฟอร์มนะคะ
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้
ด้านล่างนี้โค้ด INSERT INTO ค่ะ
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้
ตัวฟอร์มจะเพิ่มได้เรื่อยๆค่ะ แล้วแต่ผู้ออกข้อสอบ
$test_id จะรันอัตโนมัตินะคะ จขกท. ลองใส่คำสั่งลูปใน INSERT INTO แล้ว ก็ปรากฎว่าเก็บแค่ตัวเดียวเหมือนเดิมค่ะ จขกท. ต้องใช้คำสั่งอย่างไรคะ
ขอบคุณล่วงหน้าค่ะ