Asking for this with regarding on how to add class name on specific row without reloading the entire page. Upon saving I want to change the color of a input regarding of its status. If its Completed the color will change into green, if its unprocessed it will change the color to red.
Here is my Code for Javascript/AJax
<script>
$(function () {
var Toast = Swal.mixin({
toast: true,
position: 'top-end',
showConfirmButton: false,
timer: 3000
});
$('.distro').on('submit', function (e) {
e.preventDefault();
$.ajax({
type: 'post',
url: 'process/beta.php',
data: $(this).serialize(),
success: function (result) {
Toast.fire({
icon: 'success',
title: ' Ticket Save!EACH '
})
const list = document.getElementById("new").classList;
list.add("bg-danger");
}
});
});
});
Here is my code for PHP
$id = $_SESSION['employee_id'];
$flex = $_POST['flex'];
$status = $_POST['status'];
$lob = $_POST['lob'];
$comment = $_POST['comment'];
$number =$_POST['workflow'];
$date = date("Y/m/d");
$time = date("h:i:sA");
if (!empty($status) || !empty($lob)) {
$view = "SELECT ticket_timestamp FROM ticket WHERE ticket_flex='$flex'";
$view_res = mysqli_query($conn,$view);
$row = mysqli_fetch_assoc($view_res);
if ($row['ticket_timestamp'] !="") {
$update_ticket = "UPDATE ticket SET ticket_status='$status',ticket_lob='$lob',ticket_comment='$comment', ticket_workflow='$number' WHERE ticket_employee_id='$id' AND ticket_flex='$flex'";
$result_ticket = mysqli_query($conn,$update_ticket);
}else{
$update_ticket = "UPDATE ticket SET ticket_status='$status',ticket_lob='$lob',ticket_comment='$comment', ticket_workflow='$number',ticket_date_save='$date' ,ticket_timestamp='$time' WHERE ticket_employee_id='$id' AND ticket_flex='$flex'";
$result_ticket = mysqli_query($conn,$update_ticket);
}
}
Here is my code for HTML:
<form method="POST" action="#" class="distro">
<tr>
<td hidden>
<input type="checkbox" name="checkbox[]" id="checkbox[]">
</td>
<td><a href="<?php echo $row['ticket_sop']; ?>" target="_blank">Confluence</a></td>
<td>
<div class="form-group color color-ticket">
<input type="text" value="<?php echo $row['ticket_flex']; ?>" class="form-control form-control-sm <?php
if($row['ticket_status']=='Completed'){
echo "bg bg-success";
}elseif($row['ticket_status']=='Unprocessed'){
echo "bg bg-warning";
}
?>" name="flex" id="new" readonly="yes">
</div>
</td>
<td>
<select class="form-control form-control-sm select2" name="status" style="width:100%" required>
<option selected> <?php echo $row['ticket_status']; ?></option>
<option>Completed</option>
<option>Completed - Reassign</option>
<option>Completed By the Others</option>
<option>Untouched</option>
<option>Unprocessed</option>
</select>
</td>
<td>
<select class="form-control form-control-sm select2" name="lob" style="width:100%" required>
<option selected> <?php echo $row['ticket_lob']; ?></option>
<?php
// Workflow
$wf = "SELECT * FROM workflow ORDER BY wf_name ASC";
$wf_res = mysqli_query($conn,$wf);
if (mysqli_num_rows($wf_res)) {
while ($wf_lob=mysqli_fetch_assoc($wf_res)) { ?>
<option><?php echo $wf_lob['wf_name']; ?></option>
<?php
}
}
?>
</select>
</td>
<td>
<input type="text" class="form-control form-control-sm" value="<?php echo $row['ticket_comment']; ?>" name="comment" placeholder="Leave blank if Completed">
</td>
<td>
<input type="number" class="form-control form-control-sm" value="<?php echo $row['ticket_workflow']; ?>" name="workflow">
</td>
<td>
<button type="submit" class="btn btn-success btn-sm swalDefaultSuccess">
<i class="fas fa-save"></i> Save
</button>
</td>
</tr>
</form>