【发布时间】:2018-09-26 07:52:13
【问题描述】:
使用以下代码,我从 html 表中的 mysql 表中获取了 Student ID 和 Student name。在第三列 Obtained Marks 我正在通过输入框获取学生分数。现在我想在新表 testrecord 中插入所有三列(学生 ID、学生姓名和获得的分数)。
<html>
<body>
<?php
$connection = mysqli_connect ('localhost', 'admin', 'password', 'db');
if (!$connection) {
echo 'Not connected to server';
}
$select_db = mysqli_select_db($connection, 'db');
if (!$select_db) {
echo 'Not connected to database';
}
$SelectClass = $_POST ['selectclass'];
$sql= "SELECT * FROM students WHERE class = '$SelectClass'";
$query = mysqli_query($connection, $sql);
if (!$query) {
die ('SQL Error: ' . mysqli_error($connection));
}
mysqli_close($connection);
?>
<body>
<div class="container">
<form class="well form-horizontal" action="insert_marks.php" method="post">
<h1><strong>Please enter marks of each student for subject</strong></h1>
<form action="" method="post">
<table id = "result" class="data-table">
<caption class="title"></caption>
<thead>
<tr>
<th>Sr.No.</th>
<th>Student ID</th>
<th>Student Name</th>
<th>Marks Obtained</th>
</tr>
</thead>
<tbody>
<?php
$no = 1;
$total = 0;
while ($row = mysqli_fetch_array($query)) {
$stu = $row['stu_id'] == 0 ? '' : number_format($row['stu_id']);
echo '<tr>
<td>'.$no.'</td>
<td>'.$row['student_id'].'</td>
<input type="hidden" name="student_id" value='.$row['student_id'].'>
<td>'.$row['student_name'].'</td>
<input type="hidden" name="student_name" value='.$row['student_name'].'>
<td>
<div class="search-block clearfix">
<input name="obtmarks" placeholder="" type="number">
</div>
</td>
</tr>';
$total += $row['stu_id'];
$no++;
}
?>
</tbody>
</table>
<button type="submit" class="btn btn-warning" value="insert" align="right">Update<span class="glyphicon glyphicon-send"></span></button>
</form>
</div>
</body>
</html>
插入标记.php:
<html>
<body>
<?php
$connection = mysqli_connect ('localhost', 'admin', 'password', 'db');
if (!$connection) {
echo 'Not connected to server';
}
$select_db = mysqli_select_db($connection, 'db');
if (!$select_db) {
echo 'Not connected to database';
}
//***********Form Submit Goes Here***********//
while
if($_POST) {
$student_id = $_POST['student_id'];
$student_name = $_POST['student_name'];
$student_marks = $_POST['obtmarks'];
$sql= "INSERT INTO testrecord (student_id,student_name,obtained_marks) VALUES ('$student_id','$student_name','$student_marks')";
if (mysqli_query($connection, $sql)) {
echo "Marks added successfully.";
echo "<br>";
echo "<br>";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($connection);
}
}
mysqli_close($connection);
?>
</body>
</html>
表中有 20 个条目。在文本框中为每个学生插入标记后,上面的编码仅在 mysql 表“testrecord”中插入最后一条记录。您能否更正 insert_marks.php 代码。
【问题讨论】:
标签: php