0

Roll_No、Name、および Marks という 3 つの列を持つテーブルを使用してフォームを作成しています。データベースから Roll_no と Name を取得しています。教師は、それぞれの生徒のロール番号と名前に対してフォームにマークを入力するだけです。以下に示すようにコーディングしましたが、最後に入力された値のみがデータベース内のすべての学生に設定されます。sid とロールを正しく挿入できませんが、マークに問題が生じます。マークのデータベース構造は、sid、roll_no、marks です。

これが私のコードです:どこが間違っているのかを修正してください。

<form method="post" action="">
<table width="900" height="49" border="1" cellpadding="0" cellspacing="0" align="center" >
 <?php if(isset($_SESSION['response']))
      { 
echo "<tr><td colspan=\"7\">".$_SESSION['response']."</td></tr>";    unset($_SESSION['response']);} ?>

    <tr>
        <td align="center" width="20"> Roll No.</td>
        <td align="center" width="200"> Name</td>
        <td align="center" width="20"> Marks</td>
    </tr>
    <tr><input type="submit" name="next" value="submit" /></tr>
    <?php
    $sub = $_GET['sid'];

    $result = mysql_query("select * from student_record_by_faculty where sid='$sub'");
    $numrows = mysql_num_rows($result);
    if($numrows!=0)
{
        while($r=mysql_fetch_array($result))
        {
            $r2=mysql_fetch_array(mysql_query("select name from login where username='$r[reg_no]'"));


    ?>
    <tr>
    <td align="center"><?php echo $r['reg_no']; ?></td>
    <td align="center"><?php echo $r2['name']; ?></td>
    <td align="centre"><input type="number" name="marks" />
    <?php
    if(isset($_POST['next']))
    {
        $marks = $_POST['marks'];
        $q=mysql_query("INSERT INTO marks(sid, reg_no, first_sessional) VALUES('$sub','$r[reg_no]','".$_POST['marks']."')");
        echo $q;
        if($q)
        {       echo "marksheet updated you are being directed to marksheet page";
             sleep(2);
                header("Location:marksheet.php");
        }
    }
    ?>    
    </td></tr> 


  <?php                         
     }
}
    else
    {
   die('Error: ' . mysql_error());
}
//mysqli_close($con);*/
?> 

4

1 に答える 1