Pages

09 February, 2021

Updating two tables with an inner join

 I am having trouble updating it. I have two tables one is employees and other is attendance.

employees table has fields as (id, employee_id, firstname, lastname, address, email, salary, creacted_on) and attendance table has fields as (id, employee_id, date, time, description). Here is my code for editing.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
       $query = "SELECT emp.employee_id, emp.firstname, emp.lastname, att.time, att.date, att.description from attendance AS att INNER JOIN employees AS emp where att.employee_id = emp.id";
       $query_run = mysqli_query($connection, $query);
 
       if (mysqli_num_rows($query_run) > 0) {
         while ($row = mysqli_fetch_assoc($query_run)) {
       ?>
           <tr>
             <td><?php echo date('M d, Y', strtotime($row['date'])); ?></td>
             <td><?php echo $row['employee_id']; ?></td>
             <td><?php echo $row['firstname'] . ' ' . $row['lastname']; ?></td>
             <td><?php echo date('h:i A', strtotime($row['time'])); ?></td>
             <td><?php echo ($row['description']) ?></td>
             <td>
               <form action="attendance_edit.php" method="post">
                 <input type="hidden" name="edit_id" value="<?php echo $row['id']; ?>">
                 <button type="submit" name="edit_btn" class='btn btn-success btn-sm edit btn-flat'><i class='fa fa-edit'></i> Edit</button>
               </form>
             </td>
             <td>
               <form action="attendance_code.php" method="post">
                 <input type="hidden" name="deleteattendance_id" value="<?php echo $row['id']; ?>">
                 <button onclick="return  confirm('do you want to delete Y/N')" type="submit" name="deleteattendance_btn" class='btn btn-danger btn-sm delete btn-flat'><i class='fa fa-trash'></i> Delete</button>
                 </form>
                 </td>
               </tr>
 
           <?php


page edit :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
$connection = mysqli_connect("localhost", "root", "", "project08");
           if (isset($_POST['edit_btn'])) {
               $id = $_POST['edit_id'];
               $query = "SELECT * FROM attendance WHERE id= '$id'";
               $result = mysqli_query($connection, $query);
 
               while ($row = mysqli_fetch_assoc($result))
           ?>
 
               <form action="attendance_code.php" method="POST">
 
                   <input type="hidden" name="edit_id" value="<?php echo $row['id'] ?>">
 
                   <div class="form-group">
                       <label> Date </label>
                       <input type="date" name="edit_date" value="<?php echo date('M d, Y', strtotime($row['date'])); ?>" class="form-control datepicker" placeholder="Enter Date">
                   </div>
                   <div class="form-group">
                       <label>Time</label>
                       <input type="time" name="edit_time" value="<?php echo $row['time'] ?>" class="form-control timepicker" placeholder="Enter Time">
                   </div>
                   <div class="form-group">
                       <label>Description</label>
                       <input type="text" name="edit_description" value="<?php echo $row['description'] ?>" class="form-control" placeholder="Enter Description">
                   </div>
 
                   <a href="attendance.php" class="btn btn-danger"> CANCEL </a>
                   <button type="submit" name="update_btn" class="btn btn-primary"> Update </button>
 
               </form>
           <?php


 
Hello.

You may want to explain the problem a bit more. You mentioned you have a trouble updating the table for what it seems, however, that was it. It may be hard for somebody to help you - there could be many troubles.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
if (isset($_POST['update_btn'])) {
    $id = $_POST['edit_id'];
    $date = $_POST['edit_date'];
    $time = $_POST['edit_time'];
    $description = $_POST['edit_description'];
 
    $query = "UPDATE attendance att JOIN employees emp ON (att.employee_id = emp.employee_id) SET date = '$date', time = '$time', description = '$description' WHERE id = '$id'";
 
    $query_run = mysqli_query($connection, $query);
 
    if ($query_run) {
        $_SESSION['status'] = "Your data is Updated";
        $_SESSION['status_code'] = "success";
        header('Location: attendance.php');
    } else {
        $_SESSION['status'] = "Your data is NOT updated";
        $_SESSION['status_code'] = "error";
        header('Location: attendance.php');
    }
}

No comments:

Post a Comment

Thanks