即使未单击按钮,PHP查询也会运行

时间:2015-04-23 18:10:23

标签: javascript php jquery mysql database

我有一个奇怪的问题。我已设置查询以在数据库中插入两个名称。我还使用Javascript(Jquery)仅在单击创建按钮时运行它。但是,我重新加载页面的时间很快......

按钮:

<button id="button-create" type="button" style="float:right;">Create</button>

脚本:

$(document).ready(function(){
    $("#button-create").click(function(){
        $('body').append('<div class="box" id="12"><div class="head">Homework<button class="button-delete" data-panelid="12" type="button" style="float:right;">Delete</button></div><div class="text">Valkommen!</div></div>').children(':last').hide().slideDown(500);
        <?php
            $query123 = $pdo->prepare("INSERT INTO post (head, content) VALUES       ('John', 'Doe')");
            $query123->execute();
        ?>
    });
});

2 个答案:

答案 0 :(得分:0)

这是因为每当您的服务器(例如Apache)为该页面提供服务时,您的PHP脚本就会被执行,或者用琐碎的术语,用户重新加载页面。

答案 1 :(得分:0)

之所以这样做,是因为它是PHP代码。渲染PHP文件时,服务器将执行所有PHP。因此,当您运行该页面时,它会在进入浏览器之前运行该PHP代码...

将执行所有PHP,并且只有来自PHP的输出将被发送到浏览器。所以你的数据库执行已经执行了。

PHP代码=&gt;在服务器上运行

JS code =&gt;在浏览器中运行

他们无法直接沟通。

如果你想做这样的事情,你需要对一个将执行SQL查询的页面进行ajax调用。

我建议观看PHP和Javascript之间差异的介绍:https://www.youtube.com/watch?v=dJJvK3Fre0I