在这个传统的php web应用程序中单击按钮时,如何执行查询?

在这个传统的php web应用程序中单击按钮时,如何执行查询?,php,Php,我对PHP完全陌生,在一个非常旧的遗留web应用程序上实现更改请求时遇到以下问题(因此我无法更改使用的逻辑) 我有一个php文件用于显示弹出窗口: <?php require_once("../../../common/lib.php"); require_once("../../../common/define.php"); if(isset($_POST['id']) && isset($_SESSION['user']['id'])){ $id_bookin

我对PHP完全陌生,在一个非常旧的遗留web应用程序上实现更改请求时遇到以下问题(因此我无法更改使用的逻辑)

我有一个php文件用于显示弹出窗口:

<?php
require_once("../../../common/lib.php");
require_once("../../../common/define.php");

if(isset($_POST['id']) && isset($_SESSION['user']['id'])){
    $id_booking = (int)$_POST['id'];
    if(is_numeric($id_booking)){ ?>
        <script>
            function printElem(elem){
                var popup = window.open('', 'print', 'height=800,width=600');
                popup.document.write('<html><head><title>'+document.title+'</title><link rel="stylesheet" href="<?php echo getFromTemplate("css/print.css"); ?>"/></head><body>'+document.getElementById(elem).innerHTML+'</body></html>');
                setInterval(function(){
                    popup.document.close();
                    popup.focus();
                    popup.print();
                    popup.close();
                }, 100);
                return true;
            }
        </script>

    <div class="white-popup-block" id="popup-booking-<?php echo $id_booking; ?>">

        <h2><?php echo $texts['CANCEL_BOOKING'] ?></h2>

        <p>Sei veramente sicuro di voler cancellare la prenotazione?</p>
        <?php echo $id_booking; ?>


        <a href="#" class="btn btn-primary sendAjaxForm" data-action="/perform_query">
            <i class="fa fa-power-off"></i>
            Conferma
        </a>

        <?php
            $result_remove_booking = $db->query("UPDATE pm_booking SET status= ".$id_booking);
        ?>

    </div>
    <?php
    }
    ?>

    <?php
}
?>

函数printElem(elem){
var popup=window.open(“”,'打印','高度=800,宽度=600');

popup.document.write(“”+document.title+’是否已经有一些javascript没有提供来执行ajax?我猜类“sendAjaxForm”上有一个事件处理程序?你也可以显示代码吗。@Ryantuoso这也可以通过其他方式完成…我可以删除sendAjaxForm并用PHP完成。我可以这样做吗?是的,你需要用a包装并将更改为,或者,ajax调用后面的PHP应该执行查询。另外,执行查询的PHP应该在perform_query页面上,而不是o在这个页面上…它看起来像是每次加载页面时都在更新pm\u booking…而且它还会更新pm\u booking中的每一行!!!!所以要小心。你的更新几乎肯定需要“WHERE id=$id\u booking”,但你也需要保护自己不受sql注入的影响。你现在很容易受到攻击。
<a href="#" class="btn btn-primary sendAjaxForm" data-action="/perform_query">
    <i class="fa fa-power-off"></i> 
    Conferma
</a>
<?php
    $result_remove_booking = $db->query("UPDATE pm_booking SET status= ".$id_booking);
?>