简体   繁体   中英

get values from table and submit that values to another table mysql php

so i want to input data into database table from a form (but not a filling form). after that i want to match the input to some table (table A) to get the id of the inputted data. and then i want to insert that id into another table...

<?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);
        }
    }
?>

I want to match the inputted data to:

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

or here:

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

so that i can get the id for the corresponding table

and then i want to insert the id to:

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));

the input is like this:

<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>

where did i go wrong? ps sorry for the non-english variables :|

so i finally found a solution for my problem after seeing this similar question right here

i change my input to be like this:

<?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++;
        }?>

the rest of the php are the same

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM