php - 更改复选框时的 ajax 发布表单 jquery ajax 不工作

标签 php javascript jquery ajax checkbox

我正在尝试在更改复选框时创建一个表单提交 我的代码如下。 .我的问题是什么都没有发生

gotofile.php

文件但是//做某事 on the sucess 函数被执行

jquery:

$("#container input[type=checkbox]").change(function(e){
                if($(this).attr('checked')) 
                {

                    var cnType=$(this).attr("id");

                    $.ajax({
                        type: "POST",
                        url: "gotofile.php",
                        data: "typID="+cnType ,
                        cache: false,
                        success: function(){ 
                            //do something 
                        }
                    });
                }
            });

PHP:

include '../dbconnection/dbconfig.php';


$typeID=$_POST['typID'];
$qryConnections="INSERT INTO ...";
$rslt1 = mysql_query($qryConnections);

html

<form id="cnct" method="POST">
                            <div id="container" style="">
                                <ul style="list-style: none;">
                                   <li><input type="checkbox" id="1" />A</li>
                <li><input type="checkbox" id="2" />B</li>

                                </ul>
                            </div></form>

任何人都可以帮助我我做错了什么吗?

最佳答案

一些安全问题

请始终记住,您的 JS 对导航到您网站的任何人都是可见的。使用:

data : "typID="+cnType

会让我认为 typID 是您的 SQL 中的字段。您没有 CSRF 过滤器,因此我可以编写一个 ajax 脚本来欺骗有效请求并从外部位置更新您的所有字段。需要记住的一点是,我建议您阅读 CSRF 或跨站请求伪造。

为什么你的脚本不起作用

如果成功函数被触发,那么脚本已经运行。通过在 PHP 中输​​出 $_POST['typID'] 的值来调试它。如果发送正确,您将在控制台中看到变量值。

除此之外,让您的 PHP 为您的成功函数回显 JSON 响应以验证一切顺利,这总是好的。

echo json_encode(array('response' => 'success'));

('response' => 'failed') 或您需要的任何内容。然后,您可以在 success 函数中评估 JSON。

希望对您有所帮助。

关于php - 更改复选框时的 ajax 发布表单 jquery ajax 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11683128/

相关文章:

javascript - 等到功能完成

JavaScript Date() 在时区之间发生故障?

javascript - 具有延迟的 hoverintent 函数

javascript - 如何从vb.net中的aspx.vb页面调用webmethod

javascript - jQuery 中的术语 "arguments"和 "parameters"之间有什么区别吗?

php - 运行准备好的语句 (MySQL/PHP)

php - 如何用四列回显两行

具有多语言支持的 PHP 路由

javascript - 使用 angular8 在循环中传递参数 onclick

php - Symfony2 : Entity created but, 给的类不存在