|
|
|
ขอสอบถามเนื่องจากผมได้นำโค้ดการทำข้อสอบแบบตัวเลือกไปประยุกต์ใช้ แต่ไม่สามารถคำนวนคะแนนได้ |
|
|
|
|
|
|
|
ไม่สามารถคำนวนคะแนนได้ เมื่อคลิกข้อสอบแล้วจะเป็น 0 เมื่อไม่คลิกจะมีจำนวนคะแนนเท่ากับข้อสอบ
และอยากจะให้บัณทึกคะแนนลงฐานข้อมูลพร้อมกับชื่อ นามสกุล เลขที่ของผู้ทำข้อสอบด้วยอ่ะ
คือตอนนี้บัณทึกได้แค่ชื่อ นามสกุล เลขที่ผู้ทำข้อสอบ
ช่วยหน่อยนะครับ ไปไม่เป็นแล้วจริงๆครับ
ไฟล์1.php
<form name="form1" method="post" action="Sample2.php">
<?
$host="localhost";
$username="";
$password="";
$db="mydatabase";
$tb="testing";
mysql_connect($host,$username,$password) or die ("ติดต่อกับฐานข้อมูล Mysql ไม่ได้ ");
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้");
mysql_query("Set Names UTF8");
$sql="Select * From $tb order by rand() limit 5";
$db_query=mysql_query($sql);
$i=0;
while($result=mysql_fetch_array($db_query))
{
$i++;
?>
</p>
<table width="93%" height="194" border="0" align="center">
<tr>
<td height="10" align="left" valign="top"><div align="center" dir="ltr">
<h4>
<input name="id[<?=$i;?>]" type="hidden" value="<?=$result["id"];?>" />
<?=$result["question"];?>
</h4>
<h1></h1>
</div></td>
</tr>
<tr>
<td width="18%" height="37"><input name="c<?=$i;?>" type="radio" value="1" > <?=$arr[0];?>
<?=$result["c1"];?></td>
</tr>
<tr>
<td height="38"><input type="radio" name="c<?=$i;?>" value="1">
<?=$result["c2"];?></td>
</tr>
<tr>
<td height="39"><input type="radio" name="c<?=$i;?>" value="1">
<?=$result["c3"];?></td>
</tr>
<tr>
<td height="46"><input type="radio" name="c<?=$i;?>" value="1">
<?=$result["c4"];?>
<input name="answer[<?=$i;?>]" type="hidden" value="<?=$result["answer"];?>" /><br />
</td>
</tr>
</table>
<?
}
mysql_close();
?>
<div align="center">
<p class="ดด">ชื่อผู้ทำแบบทดสอบ</p>
<table width="575" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="160" class="n">ชื่อ
<input type="text" name="name" id="textfield7" />
</td>
<td width="187" class="n">นามสกุล
<input type="text" name="lname" id="textfield8" />
</td>
<td width="208" class="n">เลขที่
<input name="no" type="text" id="textfield9" value="" />
</td>
</tr>
</table>
<br>
<div align="center"><br>
<input type="hidden" name="line" value="<?=$i;?>">
<input type="submit" name="Submit" value="ตรวจคะแนน">
</div>
</form>
ไฟล์2.php
<?
$host="localhost";
$username="root";
$password="root";
$db="mydatabase";
$tb="score";
mysql_connect($host,$username,$password) or die ("ติดต่อกับฐานข้อมูล Mysql ไม่ได้ ");
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้");
mysql_query("Set Names UTF8");
//ตรวจสอบการใส่ชื่อ
print "<b>คุณ</b> $name ";
if(trim($_POST["name"]) == "")
{
echo "กรุณาใส่ชื่่อของคุณก่อน!";
exit();
}
print "<b>นามสกุล</b> $lname";
if(trim($_POST["lname"]) == "")
{
echo "กรุณาใส่นามสกุลของคุณก่อน!";
exit();
}
print "<b>เลขที่</b> $no<p>";
if(trim($_POST["no"]) == "")
{
echo "กรุณาใส่เลขที่ของคุณก่อน!";
exit();
}
//ตรวจสอบคะแนน
$score=0;
for($i=1;$i<=$_POST["line"];$i++)
{
If($_POST["c$i"] == $_POST["answer$i"])
{
$score=$score+1;
}
}
echo "ถูกทั้งหมด $score ข้อ<br>";
?>
<?
// บัณทึกลงฐานข้อมูล
$strSQL = "SELECT * FROM score WHERE fname = '".trim($_POST['name'])."' ";
$objQuery = mysql_query($strSQL);
$objResult = mysql_fetch_array($objQuery);
if($objResult)
{
echo "ชื่อผู้นี้อยู่ในระบบแล้ว";
}
else
{
$strSQL = "INSERT INTO score (fname,lname,no,score) VALUES ('".$_POST["name"]."',
'".$_POST["lname"]."','".$_POST["no"]."','".$_POST["<?=$i;?>"]."')";
$objQuery = mysql_query($strSQL);
echo "คุณได้ทำแบบทดสอบเสร็จเรียบร้อยแล้ว<br>";
echo "<br> Go to <a href='index.html'>กลับหน้าแรก</a>";
}
mysql_close();
?>
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2015-09-24 09:23:10 |
By :
nine2014 |
View :
852 |
Reply :
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่เหมือนครับ คุณลองไล่ดูดี ๆ
|
|
|
|
|
Date :
2015-09-25 20:53:28 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|