Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.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
Javascript 通过JS使用Ajax php文件提交表单_Javascript_Php_Jquery_Ajax_Forms - Fatal编程技术网

Javascript 通过JS使用Ajax php文件提交表单

Javascript 通过JS使用Ajax php文件提交表单,javascript,php,jquery,ajax,forms,Javascript,Php,Jquery,Ajax,Forms,我正在尝试向数据库提交普通html表单: <form method="post" action="#" id="productForm" onsubmit="return submitProduct(this);"> 因此,有了上面的代码,我应该能够进入“form_modifications.php”脚本,对吗? 我还没有从表单中获取“data:values”(一旦我知道了如何获取,应该就可以了) 在form_modifications.php中,我有以下内容(我只是想测试一下):

我正在尝试向数据库提交普通html表单:

<form method="post" action="#" id="productForm" onsubmit="return submitProduct(this);">
因此,有了上面的代码,我应该能够进入“form_modifications.php”脚本,对吗? 我还没有从表单中获取“data:values”(一旦我知道了如何获取,应该就可以了)

在form_modifications.php中,我有以下内容(我只是想测试一下):


我不明白为什么,但它不起作用。查询没有执行,我找不到我做错了什么。有人能帮我吗?

我怀疑可能是ajax没有启动,因为您已经说过直接访问form_modification.php工作正常。因此,我只能建议您应该如何调试。从那里你会得到更多的线索

第1步:不要在Submit上使用html内联,所以请删除该代码

<form method="post" action="#" id="productForm">
 ...............
</form>
第三步:使用google chrome并单击inspect element,然后单击network选项卡。现在,通过填写任何输入,在浏览器中单击表单提交,然后查看post请求是否被推送


第4步:单击inspect元素的console选项卡,查看是否正在打印“我正在运行”。如果是,则提交事件正在工作。

是否显示警报?表单是否提交(似乎没有任何东西阻止它?)。您能从PHP向成功处理程序返回一些东西吗?这一切都是为了找出问题到底出在哪里!首先,阻止默认提交,然后使用浏览器开发工具控制台和网络进行基本调试。检查实际的clues请求在这种情况下,它可能是require文件,您是否尝试直接转到表单_modification.php。它是否显示任何错误?感谢您的回复@madi我试过了,db连接一切正常。adeneo未显示任何警报。charlietfl您能解释一下默认提交是什么意思吗?我正试图找到更多的方法来测试它到底出了什么问题。你有没有检查过使用你的chrome inspect执行ajax?
chdir(dirname(__FILE__)."/../../..");
require_once("config/config.inc.php");
require_once("init.php");

$sql_test = "INSERT INTO ps_test_product (name) VALUES ('test');";
Db::getInstance()->query($sql_test);
<form method="post" action="#" id="productForm">
 ...............
</form>
    $( "#productForm" ).submit(function( event ) {
      console.log("I am running");
       var values = $(this).serialize();
       $.ajax({
             url: "forms/ajax/admin/form_modifications.php",
             type: "post",
             data: values,
             success: function (response) {
                  alert("Success");
             },
        });
    });