我正在使用甜蜜警告对话框进行删除确认。
如果用户点击“是” - >运行SQL以删除。
如果用户点击“否” - >什么都不做,保持记录。
<?php
if(isset($_POST['button_delete'])) {
echo '<script type="text/javascript">';
echo 'setTimeout(function (){swal({
title: "Are you sure?",
text:"You will not be able to recover this course!",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "Yes, delete it!",
cancelButtonText: "No, cancel please!",
closeOnConfirm: false,
closeOnCancel: false},
function(isConfirm)
{
if(isConfirm)
{
swal("Deleted!", "Your file has been deleted.", "success");';
$deleteCourse = mysqli_real_escape_string($conn, $_POST['button_delete']);
$user = mysqli_real_escape_string($conn, $_SESSION['session_user']);
mysqli_query($conn, "DELETE FROM enroll
WHERE CourseCode LIKE '$deleteCourse'
AND UserID=$user");
echo '
}
else
{
swal("Cancelled", "Your file is safe.", "error");
}})}, 100);';
echo '</script>';
?>
无论我单击“是”还是“否”,SQL仍将运行并删除记录。单击是/否时如何使其执行不同的功能
感谢您的帮助。
答案 0 :(得分:0)
那是因为无论如何都会执行PHP代码。 PHP没有检查它是否在JavaScript中如果括号。你必须在PHP内部进行检查。
一种方法是在按下确认按钮后使按钮发出AJAX请求。另一个是点击它时使用普通的POST(我认为你不想要,因此AJAX会更好)。