php - 插入学生考试成绩

标签 php mysql wordpress

我对每个学生的插入考试成绩有疑问。 问题是如何插入每次考试的学生成绩。

请看看我的 table :

考试表:

|id|exam_name|
| 1| run test|
| 2|swim test|

学生表

|id|s_name|
| 1| roni |
| 2| mark |

假设 roni 通过了运行测试,但未能通过游泳测试,因此表 exam_result 中 roni 的结果将如下所示: 考试成绩表

|id_studen|id_exam|status|
| 1       | 1     | 1    |
| 1       | 2     | 0    |

这是我的代码: 1. 表格输入学生考试成绩:

  <table class='wp-list-table widefat fixed striped posts'>
      <tr>
        <th class="bgth manage-column ss-list-width1">Participan Name</th>
          <th class="bgth manage-column ss-list-width1">Complited Pool Requirement</th>
          <th class="bgth manage-column ss-list-width1">Complited Theory Exam</th>
          <th class="bgth manage-column ss-list-width1">Medical Sertificate Checked</th>
    <th class="bgth manage-column ss-list-width" colspan="2">Action</th>
      </tr>
  <input type='hidden' name='exam_total' value='3'><input type='hidden' name='exam_names' value='[{"id":"1","exam_name":"Complited Pool Requirement"},{"id":"2","exam_name":"Complited Theory Exam"},{"id":"3","exam_name":"Medical Sertificate Checked"}]'><tr><td class='manage-column ss-list-width'>Handri angga riawan
        <input type='hidden' value='1' name='x-id[]'></td><td class='manage-column ss-list-width'>
          <input type='checkbox' name='status0[]' value='1'>check if pass
          <input type='hidden' name='id_exam[]' value='1' >
          </td><td class='manage-column ss-list-width'>
          <input type='checkbox' name='status1[]' value='1'>check if pass
          <input type='hidden' name='id_exam[]' value='2' >
          </td><td class='manage-column ss-list-width'>
          <input type='checkbox' name='status2[]' value='1'>check if pass
          <input type='hidden' name='id_exam[]' value='3' >
          </td><td class='manage-column ss-list-width'><a href='#'>Delete Participan</a></td></tr><td class='manage-column ss-list-width'>Suyadman
        <input type='hidden' value='2' name='x-id[]'></td><td class='manage-column ss-list-width'>
          <input type='checkbox' name='status0[]' value='1'>check if pass
          <input type='hidden' name='id_exam[]' value='1' >
          </td><td class='manage-column ss-list-width'>
          <input type='checkbox' name='status1[]' value='1'>check if pass
          <input type='hidden' name='id_exam[]' value='2' >
          </td><td class='manage-column ss-list-width'>
          <input type='checkbox' name='status2[]' value='1'>check if pass
          <input type='hidden' name='id_exam[]' value='3' >
          </td><td class='manage-column ss-list-width'><a href='#'>Delete Participan</a></td></tr></table><p><input type="submit" id="btn" name="p-submitted" value="Save Result"></p></form>

这就是我获取每个学生成绩值的方法:

if ( isset( $_POST['p-submitted'] ) ) {
        $all = array();
        $exam_total = $_POST['exam_total'];
        $exam_namer = $_POST['exam_names'];
        $idp = $_POST['x-id'];
        $idxa = $_POST['id_exam'];
        $exam_names = json_decode(stripslashes($exam_namer));

        $pu = array();
        for($a=0;$a<$exam_total-1; $a++){
        for($i=0; $i<$exam_total; $i++){

      $status = isset($_POST['status'.$i]) ? $_POST['status'.$i] : 0 ;
      echo "INSERT INTO DB VALUES($id,$xid,$status)";
      }
}

正如你所看到的,我尝试了很多,但仍然不起作用,我想插入学生考试结果, 所以sql看起来像这样:插入表值(id_student,exam_id,status); 但作为信息,我希望考试取决于考试表...

请帮助我:)

最佳答案

对于初学者来说,您并没有尝试将任何数据插入数据库,而是回显语句 echo "INSERT INTO DB VALUES($id,$xid,$status)";

其次语句不完整,格式为INSERT INTO table (COL1, COL2) VALUES (VAL1, VAL2);

接下来,您需要查看 mysqli 或更好的 PDO - https://code.tutsplus.com/tutorials/why-you-should-be-using-phps-pdo-for-database-access--net-12059

这将为您提供将数据安全插入数据库所需的所有信息。

关于php - 插入学生考试成绩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40416041/

相关文章:

MySQL 分组查询附加行

mysql - 无法从空表中截断外键约束中引用的表

php - 在现有电子邮件正文的底部添加一个 HTML 元素

php - Google Cloud Messaging - 注册设备太多导致消息失败?

php - 在 PDO 中创建多个数据库连接

php - 始终在 WooCommerce 电子邮件通知中显示送货地址

WordPress 获取不在自定义分类术语中的帖子

php - Amazon SQS 字符编码问题

PHP/SQL/PDO 注册多个表(用户、详细信息)

javascript - 无法诊断 jQuery 错误 : "Object [object Object] has no method"