Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在isset函数调用时停止页面刷新_Php_Ajax - Fatal编程技术网

Php 在isset函数调用时停止页面刷新

Php 在isset函数调用时停止页面刷新,php,ajax,Php,Ajax,我被困在提交阶段,基本上我正在使用表单创建一个类似的按钮。 当用户单击SubmitForm(一个Like按钮)时,Like计数器在SQL中获得增量。 一切正常,但我想停止在提交表单后重新加载页面 这是表格 <form method="post" id="report"> <input type="submit" name="like" value="submit"/&

我被困在提交阶段,基本上我正在使用表单创建一个类似的按钮。 当用户单击SubmitForm(一个Like按钮)时,Like计数器在SQL中获得增量。 一切正常,但我想停止在提交表单后重新加载页面

这是表格

    <form method="post" id="report">
  <input type="submit" name="like" value="submit"/>
</form>

这里是Ajax

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
    <script>
      $(function () {

        $('form').on('submit', function (e) {

          e.preventDefault();

          $.ajax({
            type: 'post',
            url: '',
            data: $('form').serialize(),
            success: function () {
          
              alert('form was submitted');
            }
          });

        });

      });
    </script>

$(函数(){
$('form')。关于('submit',函数(e){
e、 预防默认值();
$.ajax({
键入:“post”,
url:“”,
数据:$('form')。序列化(),
成功:函数(){
警报(“表格已提交”);
}
});
});
});
这是关于提交表单的查询

<?php
                                if (isset($_POST['like'])){
                                                                
                                //my sql query here
                                
                                                                }
                            ?>

我想在不刷新页面的情况下插入数据。Usng首先显示警报代码,但SQL数据未插入。。 如果删除Ajax,数据将被插入,但页面将被刷新。

尝试以下操作:

<form method="post" id="report" onsubmit="yourJsFunction();return false">
     <input type="submit" name="like" value="submit"/> 
</form>


如果使用常规按钮而不是提交按钮,则无需担心页面重新加载。当您使用ajax时,除了
like=submit
之外,您不需要发送任何参数。如果您实际上只是在这里发出ajax请求,那么页面将不会重新加载。所以,一定是出了什么问题。检查浏览器控制台要说什么(将其设置为在页面重新加载之后保留条目),添加一些console.log语句以验证click处理程序是否实际使用服务器端php执行click handler.client-side html按钮?是的,如果您使用AJAX,那么AJAX将成为浏览器和服务器之间的连接器,而不是默认的表单提交行为。事实上,页面上的任何事件都可以用来触发AJAX请求……也可以是其他JavaScript计算的结果。它根本不需要涉及按钮。重要的是,HTTP请求被发送到服务器……这就是导致PHP执行HTTP的原因,但页面仍会刷新,数据不会进入SQL@Struggler$(“#IdForm”).submit(函数(e){e.preventDefault();});还是没什么变化