|
|
|
เช็คข้อมูล Input จาก checkbox ก่อน submit ทำหน้าที่เป็นแบบประเมิน มีคำถามหลายๆข้อ แต่ละข้อมีคำตอบแบบ checkbox คะ |
|
|
|
|
|
|
|
เช็คข้อมูลInputจากcheckbox ก่อนsubmit ทำหน้าที่เป็นแบบประเมิน มีคำถามหลายๆข้อ แต่ละข้อมีคำตอบแบบ checkbox คะ อยากรู้วิธีเช็คว่าถ้ามีข้อไหนยังไม่ตอบก็ยัง submit ไม่ได้อะค่ะ
Code (PHP)
<table width="80%" align="center">
<?php
$i=1;
$SQLQ = "SELECT Question.QuestionID, Question.QuestionDetail, Question.QuestionType
FROM Question INNER JOIN Standard ON Question.StandardID = Standard.StandardID where Question.StandardID=".$StdId ;
$resultQ = mssql_query($SQLQ);
while($dataQ = mssql_fetch_array($resultQ))
{
$arrq[$i] = $dataQ['QuestionID'];
if($dataQ['QuestionType']==1)
{
?>
<tr bgcolor="#C5FCE6">
<td height="46" colspan="2"><strong>คำถามข้อที่
<?php echo $i++; ?>
</strong>: <?php echo iconv('TIS-620','UTF-8',$dataQ['QuestionDetail']); ?> </td>
</tr>
<?php
$SQLC = "SELECT Choice.ChoiceID, Choice.ChoiceDetail, Choice.ChoiceNumber, Choice.ChoicePoint
FROM Question INNER JOIN
Standard ON Question.StandardID = Standard.StandardID INNER JOIN
Choice ON Question.QuestionID = Choice.QuestionID
where Question.QuestionID=".$dataQ['QuestionID'] ;
$resultC = mssql_query($SQLC);
while($dataC = mssql_fetch_array($resultC))
{
?>
<tr bordercolor="#00FFCC">
<td width="672" height="46">
<input type="radio" name="Ans<?php echo $dataQ['QuestionID']; ?>" id="Ans<?php echo $dataC['ChoiceNumber']; ?>"
value="<?php echo $dataC['ChoicePoint'].'/'.$dataC['ChoiceNumber']; ?>" />
<?php echo iconv('TIS-620','UTF-8',$dataC['ChoiceDetail']); ?> </td>
<td width="111" height="46" colspan="-2"> </td>
</tr>
<?php
}
}
else
{
?>
<tr bgcolor="#C5FCE6">
<td height="46" colspan="2">คำถามข้อที่
<?php echo $i++; ?> : <?php echo iconv('TIS-620','UTF-8',$dataQ['QuestionDetail']); ?> </td>
</tr>
<tr align="left" bordercolor="#00FFCC">
<td height="46" colspan="2">
<div align="center">
<textarea name="Ans<?php echo $dataQ['QuestionID']; ?>" id="choice<?php echo $dataQ['QuestionID']; ?>" cols="130" rows="7">
</textarea>
</div></td>
</tr>
<p>
<?php
}
}
?>
</table>
<div align="center">
<input type="submit" name="Submit" id="button" value="บันทึกการประเมิน" />
</div>
</form>
Tag : PHP, Ms SQL Server 2008, JavaScript
|
|
|
|
|
|
Date :
2013-01-30 15:44:26 |
By :
Rainingtoring |
View :
2990 |
Reply :
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณคะ แบบทดสอบที่ทำมีจำนวนคำถามไม่แน่นอน แล้วเวลาเช็คว่าทำทุกข้อแล้วยัง ทำยังไงคะ เคยลองทำ จาวาสคริป แต่ติดเรื่องเรื่องแปร อาร์เรย์ งงๆ
ขอลิงค์ตัวอย่างหน่อยนะคะ ขอบคุณมากๆเลยคะ
|
|
|
|
|
Date :
2013-02-01 00:55:05 |
By :
Rainingtoring |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถามต่ออีกหน่อยนะครับ กำลังทำเกี่ยวกับการประเมินพอดีเลยครับ ถ้าเวลาเอาข้อมูลการประเมินตามข้อ ใครเป็นผู้ประเมิน ใครถูกประเมิน ลงใส่ตารางต้องเขียนยังไงครับ
|
|
|
|
|
Date :
2013-02-01 08:57:32 |
By :
jaruwit |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
งงนิดหน่อยคะ
คือแบบประเมินอันนี้ ท้ายสุดจะเก็บลงตารางคะแนนคะ ก็เก็บคะแนนแต่ละข้อ แล้วก็รหัสผู้ประเมิน ผู้ถูกประเมิน แล้วค่อยมา sum คะแนน ตามผู้ประเมินแต่ละคนทีหลังคะ
|
|
|
|
|
Date :
2013-02-04 15:50:36 |
By :
Rainingtoring |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
การตั้งชื่อ (name) radio button หากมันอยู่ในกลุ่มเดียวกัน หรือข้อเดียวกัน ให้ตั้งชื่อเป็นชื่อเดียวกันทั้งหมดครับ
เพราะถ้าหากตั้งไม่เหมือนกันแล้ว มันจะไม่มีความเกี่ยวพันกัน
คือสามารถทำ checked ได้ทั้ง 4 อัน ซึ่งไม่เป็นที่พึงประสงค์สำหรับ radio button (ต้องมีอันหนึ่งอันใดเท่านั้นที่ถูกเลือก)
HTML
<form action="" method="get">
<label><input type="radio" name="quiz1" /> Choice 1 for Quiz 1</label>
<label><input type="radio" name="quiz1" checked="checked" /> Choice 2 for Quiz 1</label>
<label><input type="radio" name="quiz1" /> Choice 3 for Quiz 1</label>
<label><input type="radio" name="quiz1" /> Choice 4 for Quiz 1</label>
<label><input type="radio" name="quiz2" /> Choice 1 for Quiz 2</label>
<label><input type="radio" name="quiz2" /> Choice 2 for Quiz 2</label>
<label><input type="radio" name="quiz2" /> Choice 3 for Quiz 2</label>
<label><input type="radio" name="quiz2" checked="checked" /> Choice 4 for Quiz 2</label>
<label><input type="radio" name="quiz2" /> Choice 5 for Quiz 2</label>
</form>
และเมื่อเราตั้งชื่อให้มันแล้ว การเข้าถึง "Array ของ radio button เหล่านั้น" (จริงๆ มันไม่ใช่ Array แต่ขอใช้คำนี้ เพื่อความเข้าใจง่าย) ด้วยจาวาสคริปต์ก็จะเข้าถึงได้ผ่านชื่อที่เราตั้งไว้
Code (JavaScript)
var form = document.form[0]; // สมมติว่า radio button เหล่านี้อยู่ใน form แรกของเพจ
var quiz1 = form.quiz1; // Array ของ radio button ของข้อ 1 (quiz1)
alert(quiz1.length); // จะได้ค่า 4
alert(form.quiz2.length); // จะได้ค่า 5
alert(quiz1[0].checked); // false (สถานะการ checked ของ radio button อันที่ 1)
alert(quiz1[1].checked); // true (สถานะการ checked ของ radio button อันที่ 2)
|
ประวัติการแก้ไข 2013-02-05 05:08:52
|
|
|
|
Date :
2013-02-05 05:07:17 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตัวอย่างเพิ่มจากการอธิบายก่อนหน้านี้ครับ
Code (PHP)
<!DOCTYPE html>
<html>
<title>ตัวอย่างการตรวจสอบสถานะของ radio button</title>
<body>
<form action="" method="get">
<div>
<h3>Quiz 1</h3>
<label><input type="radio" name="quiz1" value="1" /> Choice 1 for Quiz 1</label><br />
<label><input type="radio" name="quiz1" value="2" /> Choice 2 for Quiz 1</label><br />
<label><input type="radio" name="quiz1" value="3" /> Choice 3 for Quiz 1</label><br />
<label><input type="radio" name="quiz1" value="4" /> Choice 4 for Quiz 1</label>
</div>
<div>
<h3>Quiz 2</h3>
<label><input type="radio" name="quiz2" value="1" /> Choice 1 for Quiz 2</label><br />
<label><input type="radio" name="quiz2" value="2" /> Choice 2 for Quiz 2</label><br />
<label><input type="radio" name="quiz2" value="3" /> Choice 3 for Quiz 2</label><br />
<label><input type="radio" name="quiz2" value="4" /> Choice 4 for Quiz 2</label><br />
<label><input type="radio" name="quiz2" value="5" /> Choice 5 for Quiz 2</label>
</div>
<div>
<h3>Quiz 3</h3>
<label><input type="radio" name="quiz3" value="1" /> Choice 1 for Quiz 3</label><br />
<label><input type="radio" name="quiz3" value="2" /> Choice 2 for Quiz 3</label><br />
<label><input type="radio" name="quiz3" value="3" /> Choice 3 for Quiz 3</label>
</div>
<input type="button" value="Submit" onclick="verify();" />
</form>
<script type="text/javascript">
function verify() {
var form = document.forms[0], // ฟอร์มแรกของเพจ
i = 1; // จะใช้เพื่ออ้างถึง "กลุ่มของ radio button"
while (true) {
// เนื่องจากเราตั้งชื่อ "กลุ่มของ radio button" ในรูปแบบ "quiz" ตามด้วย ตัวเลข
// เราจึงใช้ตัวแปรตัวเลขในการเข้าถึงพวกมันได้ด้วย form["quiz???"]
var quiz = form["quiz" + i]; // Array ของ radio button ตามค่าของ i
if (!quiz) { // ถ้าเป็น undefined นั่นหมายความว่าตรวจสอบครบทุกข้อแล้ว
break; // ออกจากลูป while
}
i++; // เพิ่มค่า i ขึ้น 1
var n = quiz.length; // จำนวนตัวเลือกของข้อนี้ (จำนวน radio button ในกลุ่มนี้)
for (var j = 0; j < n; j++) { // วนลูปเพื่อตรวจสอบทุกตัวเลือก
if (quiz[j].checked) { // ตัวว่าตัวเลือกที่ j นั้น มีสถานะใด
break; // หากถูกเลือกแล้ว ก็ให้ออกจากลูป for
}
}
if (j === n) { // หาก j มีค่าเท่ากับ n นั่นหมายความว่า ไม่มีตัวเลือกใดถูกเลือก
alert("คุณยังทำแบบสอบถามไม่ครบทุกข้อ"); // แจ้งเตือน
return; // ออกจากฟังก์ชั่น
}
}
form.submit(); // ทำการ submit ฟอร์ม
}
</script>
<pre><?php print_r($_GET); ?></pre>
</body>
</html>
|
|
|
|
|
Date :
2013-02-05 05:46:35 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สงสัยผมจะตอบผิด สับสน นิดหน่อยครับ
|
|
|
|
|
Date :
2013-02-05 09:22:12 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก็จากชื่อของ radio button ไงครับ
<input type="radio" name="Ans26" id="Ans116" value="1/116" />
Ans26 ก็คือคำตอบของคำถามข้อ 26 ไม่ใช่เหรอครับ
|
|
|
|
|
Date :
2013-02-06 06:13:03 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช่คะ เอาเลขนั้นส่งไป จาวาสคริปยังไงคะ เคยทำแล้วแต่ ไม่มีค่าในอาร์เรย์ เวลาส่งไป alert ที่ จาวาสคริป
|
|
|
|
|
Date :
2013-02-06 08:18:17 |
By :
Rainingtoring |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไมต้องมี id ครับ มีการอ้างถึง input เหล่านี้ในรูปแบบอื่นหรือเปล่า
เพราะถ้าทำตามตัวอย่างที่ผมแสดงให้ดู มันจะเป็นการเข้าถึง <input type="radio" /> โดยไม่จำเป็นต้องกำหนด id
ลองรันตัวอย่างที่ผมทำไว้ให้ดูครับ แล้วศึกษาดู ผมคิดว่าคำตอบอยู่ในนั้นครับ
|
|
|
|
|
Date :
2013-02-06 08:57:18 |
By :
cookiephp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ค่าา ขอบคุณคะ จะลองประยุกต์ดู
|
|
|
|
|
Date :
2013-02-06 10:00:51 |
By :
Rainingtoring |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณมากๆๆ นะคะ คุณ น้องเปรม
|
|
|
|
|
Date :
2013-02-06 10:02:34 |
By :
Rainingtoring |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|