javascript - 使用 php var 确认删除

标签 javascript php

我的代码示例:

    <form action="test.php" method="GET">

        <input type="text" name="Delete_This" value="<?php if (isset($_GET['Delete_This'])) echo $_GET['Delete_This']?>">
        <input type="submit" name="Deleting" value="Delete this">

        <?php
            // If the deleting button is pressed
            if (isset($_GET['Deleting']))
            {

                $DeleteThis = $_GET['Delete_This'];

               ?> 
                <script type='text/javascript'>
                    if (confirm('Are you sure you want to delete <?php echo $DeleteThis ?> ?'))
                        alert('<?php echo $DeleteThis ?> deleted');
                         <?php
                           $sql_delete="DELETE FROM table WHERE Name like '".$DeleteThis ."'";
                           mysqli_query($db,$sql_delete);
                        ?>
                   else
                    alert('Not deleted');


                </script>               
        <?php } ?>
    </form>

确认框正确打开。我的问题是,无论我点击确定还是取消$sql_delet被执行。 我知道我应该在顶部使用 Javascript <head>我的文档,但如果我这样做,我将无法执行删除查询,我必须警告用户他要删除什么。 {$DeleteThis}工作正常。我还使用了onclick input 上的函数但我不能使用{$DeleteThis} .

综合:我想要,如果confirm框被取消,查询不会被执行,我必须在 confirm 中使用 php 变量和alert .

最佳答案

您可能想了解服务器端语言和客户端语言之间的区别。

您放入 php 代码中的所有内容都会在 html 和 javascript 代码发送到用户浏览器之前执行。

相比之下,您在 javascript 代码中放入的所有内容都不再影响 php 代码。

因此,您的代码中发生的情况是,php 首先检查是否存在 $_GET['Deleting'] 变量。如果有的话,它会找到一些 html 和 javascript,并记住稍后应该将其输出到浏览器。然后它执行删除查询。完成后,它会将以下 javascript(以及任何周围的 html)发送到浏览器:

<script type='text/javascript'>
    if (confirm('Are you sure you want to delete your-deletion-value ? \nHey'))
        alert('your-deletion-value deleted');

   else
    alert('Not deleted');


</script>

所以希望您能看到两者之间的脱节。

关于javascript - 使用 php var 确认删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30344723/

相关文章:

javascript - jQuery 使用自定义顺序对 HTML 表格进行排序

javascript - 模糊操作,除非使用 jQuery 单击特定元素

php - 在 in_array() 和 || 之外使用什么更好运算符(operator)?

php - 将图像放入 foreach 循环中的行

php - 是否存在前端编码人员可以存储数据的神奇后端服务?

javascript - 如何使 <li> 仅在滚动时出现在导航栏中

php - 如何编写 artisan 命令来在 Laravel 中搜索特定的路由名称

php - 如何将页面源保存在 php 变量中?

php - 用Java的Wami记录器

javascript - Vue.js 应该测试 main.js 文件吗?