php - 从表中获取值并将该值提交到另一个表 mysql php

标签 php mysql

所以我想将数据从表单(而不是填写表单)输入到数据库表中。之后我想将输入与某个表(表 A)匹配以获取输入数据的 ID。然后我想将该 ID 插入到另一个表中......

<?php    
//submit attendance mahasiswa
    if(isset($_POST['buttonSubmitAbsenMahasiswa'])){

        foreach($_POST['inputStatusAbsen'] as $id_absensi=>$status_absensi){
            $id_mahasiswa = $_POST['inputHiddenIDMahasiswa'][$id_absensi];
            $nim_mahasiswa = $_POST['inputHiddenNIMMahasiswa'][$id_absensi];
            $nama_mahasiswa = $_POST['inputHiddenNamaMahasiswa'][$id_absensi];
            $nama_matakuliah = $_POST['inputHiddenMataKuliahMahasiswa'][$id_absensi];
            $tanggal_absensi = date("Y-m-d");       

            //get matakuliah id
            $class_query = "SELECT * FROM matakuliah WHERE nama_matakuliah='".$nama_matakuliah."'";
            $class_id = mysqli_query($connection, $class_query);

            if($class_id){
                while($class_id1 = $class_id->fetch_assoc()){
                    $class_id_fin = $class_id1['id_matakuliah'];
                }
            }

            //get mahasiswa id
            $student_query = "SELECT * FROM data_mahasiswa WHERE nama_mahasiswa='".$nama_mahasiswa."'";
            $student_id = mysqli_query($connection, $student_query);

            if($student_id) {
                while ($student_id1 = $student_id->fetch_assoc()) {
                    $student_id_fin = $student_id1['id_mahasiswa'];
                }
            }

            //insert or update the record
            $query_insert_data_absensi = "INSERT INTO data_absensi VALUES ('$class_id_fin' , '$student_id_fin' , '$tanggal_absensi' , '$status_absensi')";

            mysqli_query($connection, $query_insert_data_absensi);
        }
    }
?>

我想将输入的数据匹配到:

CREATE TABLE data_mahasiswa(
id_mahasiswa int(255) PRIMARY KEY AUTO_INCREMENT,
nim_mahasiswa varchar(255),
nama_mahasiswa varchar(255),
matakuliah_mahasiswa varchar(255));

或在这里:

CREATE TABLE matakuliah(
id_matakuliah int(255) PRIMARY KEY AUTO_INCREMENT,
nama_matakuliah varchar(255));

这样我就可以得到对应表的id

然后我想将 id 插入到:

CREATE TABLE data_absensi(
id_absensi int(255) PRIMARY KEY AUTO_INCREMENT,
id_mahasiswa int(255),
id_matakuliah int(255),
tanggal_absensi date,
status_absensi varchar(255));

输入是这样的:

<tr>
  <td>
    <?php echo $class['id_mahasiswa']; ?>
    <input type="text" hidden value="<?php echo $class['id_mahasiswa']; ?>" id="inputHiddenIDMahasiswa" name="inputHiddenIDMahasiswa[<?php echo $i; ?>]">
  </td>
  <td>
    <?php echo $class['nim_mahasiswa']; ?>
    <input type="text" hidden value="<?php echo $class['nim_mahasiswa']; ?>" id="inputHiddenNIMMahasiswa" name="inputHiddenNIMMahasiswa[<?php echo $i; ?>]">
  </td>
  <td>
    <?php echo $class['nama_mahasiswa']; ?>
    <input type="text" hidden value="<?php echo $class['nama_mahasiswa']; ?>" id="inputHiddenNamaMahasiswa" name="inputHiddenNamaMahasiswa[<?php echo $i; ?>]">
  </td>
  <td>
    <?php echo $class['matakuliah_mahasiswa']; ?>
    <input type="text" hidden value="<?php echo $class['matakuliah_mahasiswa']; ?>" id="inputHiddenMataKuliahMahasiswa" name="inputHiddenMataKuliahMahasiswa[<?php echo $i; ?>]">
  </td>
  <td>
    <div class="form-check form-check-inline">
      <input class="form-check-input" type="radio" name="inputStatusAbsen[<?php echo $i; ?>]" value="Hadir">
      <label class="form-check-label" for="inlineRadio1">Hadir</label>
    </div>
    <div class="form-check form-check-inline">
      <input class="form-check-input" type="radio" name="inputStatusAbsen[<?php echo $i; ?>]" value="Tidak hadir">
      <label class="form-check-label" for="inlineRadio2">Tidak Hadir</label>
    </div>
  </td>
</tr>

我哪里错了? p.s 对非英语变量感到抱歉:|

最佳答案

所以在看到类似的问题后,我终于找到了解决问题的方法 right here

我把我的输入改成这样:

<?php
    $i = 0;
        while($row = mysqli_fetch_array($result_pencarian)){
        ?>
            <tr>
                <td>
                    <?php echo $row['id_mahasiswa']; ?>
                    <input type="text" hidden value="<?php echo $row['id_mahasiswa']; ?>" id="inputHiddenIDMahasiswa" name="inputHiddenIDMahasiswa[<?php echo $i; ?>]"/>
                </td>
                <td>
                    <?php echo $row['nim_mahasiswa']; ?>
                    <input type="text" hidden value="<?php echo $row['nim_mahasiswa']; ?>" id="inputHiddenNIMMahasiswa" name="inputHiddenNIMMahasiswa[<?php echo $i; ?>]"/>
                </td>
                <td>
                    <?php echo $row['nama_mahasiswa']; ?>
                    <input type="text" hidden value="<?php echo $row['nama_mahasiswa']; ?>" id="inputHiddenNamaMahasiswa" name="inputHiddenNamaMahasiswa[<?php echo $i; ?>]"/>
                </td>
                <td>
                    <?php echo $row['matakuliah_mahasiswa']; ?>
                    <input type="text" hidden value="<?php echo $row['matakuliah_mahasiswa']; ?>" id="inputHiddenMataKuliahMahasiswa" name="inputHiddenMataKuliahMahasiswa[<?php echo $i; ?>]"/>
                </td>
                <td>
                    <div class="form-check form-check-inline">
                        <input class="form-check-input" type="radio" checked="checked" name="inputStatusAbsen[<?php echo $i; ?>]" value="Hadir"/>
                        <label class="form-check-label" for="inlineRadio1">Hadir</label>
                    </div>
                    <div class="form-check form-check-inline">
                        <input class="form-check-input" type="radio" name="inputStatusAbsen[<?php echo $i; ?>]" value="Tidak hadir"/>
                        <label class="form-check-label" for="inlineRadio2">Tidak Hadir</label>
                    </div>
                </td>
            </tr>
        <?php
            $i++;
        }?>

其余的php都是一样的

关于php - 从表中获取值并将该值提交到另一个表 mysql php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55196126/

相关文章:

php - Symfony2,上传新图像或选择现有图像(后台)

mysql - 如何创建带有可选参数的sql语句

php - 如何从数据库分配 HTML 属性值?

mysql - 错误回滚事务

mysql - 重置主键自动增量[第2部分]

C#——从 MySQL 检索数据并在 "pages"中对它们进行排序,而不使用 DataGridView

mime - 语法错误,意外的 T_SL

PHP 再次为 sql 查询设置变量值不起作用

php - OSClass 中的 JavaScript 在父类别在 Firefox 中无效后显示子类别

php - 什么是 'YTowOnt9' ?