How to automatically display data in textboxes?
Posted: Sun Aug 14, 2011 8:31 pm
Hi, I am trying to create a page where teachers will be able to input marks. So far what I have managed to develop is like this- the page shows the list of students with their names and roll numbers in the first and second column. In the third column, there is a text box to input the obtained marks and once it is filled and the user moves to the next textbox, I intend it to automatically calculate the grades and GPAs and show in the four and five column in two text boxes and here I am stuck now. To automatically calculate GPA I have coded a javascript function, but the problem is it shows GPA and Grade only for the student who is on the very top of the list. It doesn’t work for rest of the students or you can say textboxes. Would you please kindly help me to solve this problem?
I have snapshot of the problem. here is the link - http://oi56.tinypic.com/2622vpf.jpg and i have attached it with this message also.
Thanks in Advance
Here is the code that I have developed so far-
<html>
<head>
</head>
<body>
<form name="form" action="ball.php" method="post">
Total Mark <input size="5" id="totalmark" type="text" name="totalmark" value=""/>
<table align="center" border="0" width="70%">
<tr class="table_head">
<td width="37%"><div align="center"><strong><span class="style3">Student Name </span></strong></div></td>
<td width="22%"><div align="center"><strong><span class="style3">Student ID </span></strong></div></td>
<td width="21%"><div align="center"><strong><span class="style3">Obtained Mark</span></strong></div></td>
<td width="20%"><div align="center"><strong><span class="style3">Grade</span></strong></div></td>
<td width="20%"><div align="center"><strong><span class="style3">GPA</span></strong></div></td>
<td width="20%"><div align="center"><strong><span class="style3">Status</span></strong></div></td>
</tr>
<?PHP
include("connect.php");
$query = "SELECT * FROM student WHERE batch= 'Eight-A' ";
$result = mysql_query($query);
$num = mysql_num_rows ($result);
mysql_close();
if ($num > 0 ) {
$i=0;
while ($i < $num) {
$studentname = mysql_result($result,$i,"studentname");
$studentid = mysql_result($result,$i,"studentid");
?>
<tr style="background:<?=(($i%2)?'#ddd':'#eee')?>">
<td><div align="center"><span class="style3"><a href="studentprofile.php?studentid=<? echo $studentid?>"><? echo $studentname ?></a></span></div></td>
<td><div align="center"><span class="style3"><input type="hidden" name="studentid[]" value="<? echo $studentid?>"><? echo $studentid?> </span></div></td>
<td><div align="center"><span class="style3"><input id="obtainedmark[]" onBlur="recalculateSum();" size="5" type="text" name="obtainedmark[]" value=""/></span></div></td>
<td><div align="center"><span class="style3"><input id="grade" size="5" type="text" name="grade" value=""/></span></div></td>
<td><div align="center"><span class="style3"><input id="gradepoint" size="5" type="text" name="gradepoint" value=""/></span></div></td>
<? include('pullgradesinfo.php'); ?>
<script language="javascript">
function recalculateSum()
{
var num1 = parseFloat(document.getElementById("obtainedmark").value);
var num2 = parseFloat(document.getElementById("totalmark").value);
if (num1 > num2)
{
alert('The obtained mark suppose to be lesser than the Total Mark');
return false;
}
else
{
var num3= ((num1/ num2)*100).toFixed( 1 ) ;
if (num3 >="<?= $mark1?>" ) {var gradepoint= "<?=$gradepoint1?>"; var grade="<?=$grade1?>";}
if (num3 ==100 ) {var gradepoint= "<?=$gradepoint1?>"; var grade="<?=$grade1?>";}
if (num3 >="<?= $mark2?>" && num3 < "<?=$mark1?>" ) {var gradepoint="<?=$gradepoint2?>"; var grade="<?=$grade2?>";}
if (num3 >="<?= $mark3?>" && num3 < "<?=$mark2?>" ) {var gradepoint="<?=$gradepoint3?>"; var grade="<?=$grade3?>";}
if (num3 >="<?= $mark4?>" && num3 <"<?= $mark3?>" ) {var gradepoint="<?=$gradepoint4?>"; var grade="<?=$grade4?>";}
if (num3 >="<?= $mark5?>" && num3 < "<?=$mark4?>" ) {var gradepoint="<?=$gradepoint5?>"; var grade="<?=$grade5?>";}
if (num3 >="<?= $mark6?>" && num3 <"<?= $mark5?>" ) {var gradepoint="<?= $gradepoint6?>"; var grade="<?=$grade6?>";}
if (num3 >="<?= $mark7?>" && num3 <"<?= $mark6?>" ) {var gradepoint="<?=$gradepoint7?>"; var grade="<?=$grade7?>";}
if (<?= $mark7?> > num3 ) {var gradepoint="<?=$gradepoint7?>"; var grade="<?=$grade7?>";}
document.getElementById("grade").value = (grade);
document.getElementById("gradepoint").value = (gradepoint);
}
}
</script>
<td><div align="center"><span class="style3"><select name="status[]"> <option value="Present">Present </option> <option value="Absent">Absent </option></select></span></div></td>
</tr>
<a href="in.ph" > </a>
<?
++$i; } } else { echo "No Record Found"; }
?>
<tr> <td><input type="submit" value="Submit" name="Submit"> </td></tr>
</table>
<input type="hidden" name="highestmark" value="20"/> <input type="hidden" name="subject" value="Bangla 1"/>
<input type="hidden" name="examdate" value="2011-01-01"/>
<input type="hidden" name="examtype" value="Mid Term"/>
<input type="hidden" name="totalmark" value="20"/>
</form>
</body>
</html>
I have snapshot of the problem. here is the link - http://oi56.tinypic.com/2622vpf.jpg and i have attached it with this message also.
Thanks in Advance
Here is the code that I have developed so far-
<html>
<head>
</head>
<body>
<form name="form" action="ball.php" method="post">
Total Mark <input size="5" id="totalmark" type="text" name="totalmark" value=""/>
<table align="center" border="0" width="70%">
<tr class="table_head">
<td width="37%"><div align="center"><strong><span class="style3">Student Name </span></strong></div></td>
<td width="22%"><div align="center"><strong><span class="style3">Student ID </span></strong></div></td>
<td width="21%"><div align="center"><strong><span class="style3">Obtained Mark</span></strong></div></td>
<td width="20%"><div align="center"><strong><span class="style3">Grade</span></strong></div></td>
<td width="20%"><div align="center"><strong><span class="style3">GPA</span></strong></div></td>
<td width="20%"><div align="center"><strong><span class="style3">Status</span></strong></div></td>
</tr>
<?PHP
include("connect.php");
$query = "SELECT * FROM student WHERE batch= 'Eight-A' ";
$result = mysql_query($query);
$num = mysql_num_rows ($result);
mysql_close();
if ($num > 0 ) {
$i=0;
while ($i < $num) {
$studentname = mysql_result($result,$i,"studentname");
$studentid = mysql_result($result,$i,"studentid");
?>
<tr style="background:<?=(($i%2)?'#ddd':'#eee')?>">
<td><div align="center"><span class="style3"><a href="studentprofile.php?studentid=<? echo $studentid?>"><? echo $studentname ?></a></span></div></td>
<td><div align="center"><span class="style3"><input type="hidden" name="studentid[]" value="<? echo $studentid?>"><? echo $studentid?> </span></div></td>
<td><div align="center"><span class="style3"><input id="obtainedmark[]" onBlur="recalculateSum();" size="5" type="text" name="obtainedmark[]" value=""/></span></div></td>
<td><div align="center"><span class="style3"><input id="grade" size="5" type="text" name="grade" value=""/></span></div></td>
<td><div align="center"><span class="style3"><input id="gradepoint" size="5" type="text" name="gradepoint" value=""/></span></div></td>
<? include('pullgradesinfo.php'); ?>
<script language="javascript">
function recalculateSum()
{
var num1 = parseFloat(document.getElementById("obtainedmark").value);
var num2 = parseFloat(document.getElementById("totalmark").value);
if (num1 > num2)
{
alert('The obtained mark suppose to be lesser than the Total Mark');
return false;
}
else
{
var num3= ((num1/ num2)*100).toFixed( 1 ) ;
if (num3 >="<?= $mark1?>" ) {var gradepoint= "<?=$gradepoint1?>"; var grade="<?=$grade1?>";}
if (num3 ==100 ) {var gradepoint= "<?=$gradepoint1?>"; var grade="<?=$grade1?>";}
if (num3 >="<?= $mark2?>" && num3 < "<?=$mark1?>" ) {var gradepoint="<?=$gradepoint2?>"; var grade="<?=$grade2?>";}
if (num3 >="<?= $mark3?>" && num3 < "<?=$mark2?>" ) {var gradepoint="<?=$gradepoint3?>"; var grade="<?=$grade3?>";}
if (num3 >="<?= $mark4?>" && num3 <"<?= $mark3?>" ) {var gradepoint="<?=$gradepoint4?>"; var grade="<?=$grade4?>";}
if (num3 >="<?= $mark5?>" && num3 < "<?=$mark4?>" ) {var gradepoint="<?=$gradepoint5?>"; var grade="<?=$grade5?>";}
if (num3 >="<?= $mark6?>" && num3 <"<?= $mark5?>" ) {var gradepoint="<?= $gradepoint6?>"; var grade="<?=$grade6?>";}
if (num3 >="<?= $mark7?>" && num3 <"<?= $mark6?>" ) {var gradepoint="<?=$gradepoint7?>"; var grade="<?=$grade7?>";}
if (<?= $mark7?> > num3 ) {var gradepoint="<?=$gradepoint7?>"; var grade="<?=$grade7?>";}
document.getElementById("grade").value = (grade);
document.getElementById("gradepoint").value = (gradepoint);
}
}
</script>
<td><div align="center"><span class="style3"><select name="status[]"> <option value="Present">Present </option> <option value="Absent">Absent </option></select></span></div></td>
</tr>
<a href="in.ph" > </a>
<?
++$i; } } else { echo "No Record Found"; }
?>
<tr> <td><input type="submit" value="Submit" name="Submit"> </td></tr>
</table>
<input type="hidden" name="highestmark" value="20"/> <input type="hidden" name="subject" value="Bangla 1"/>
<input type="hidden" name="examdate" value="2011-01-01"/>
<input type="hidden" name="examtype" value="Mid Term"/>
<input type="hidden" name="totalmark" value="20"/>
</form>
</body>
</html>