我可以在ajax代码中编写SQL更新吗
Can I write SQL update inside ajax code?
我一直在编写ajax代码,其中需要更新SQL表。我不确定我是否可以在ajax中编写SQL代码,因为我对ajax完全陌生。当我尝试时,我遇到了问题,即当我在ajax代码中编写SQL更新的代码时,它会给我一个错误,说"Unaught Syntax error:Missing catch or finally after try"。这是我正在处理的代码:
$("#ktId").change(function(){
var cataid = $("#ktId option:selected").val();
var tktid = $(this).attr('tktid');
if (tktid != '') {
$.ajax({
async: false,
type : 'POST',
url : 'ajax/ticketload_test.asp',
data : { cataid: cataid, tktid: tktid },
success : function(responseData) {
try {
SQL = "UPDATE tbltkt SET ticketType = '& cataid &' WHERE id = '" & Request("tktid")& "'"
}
}
catch(e) {/*ignore*/}
}
});
} else {
alert("Please fill in the catagory!");
}
});
背景:在经典的ASP中,我必须创建并从下拉列表中选择值。所以上面提到的"#ktId"就是下拉列表的id。从下拉列表中选择一个选项后,我只需要更新表,即上面提到的tbltkt。"ticketType"是下拉列表中选项的字段或列。所以有人能在这里提到或指出我的错误吗。我可以在ajax中使用SQL更新代码吗?
请不要那样做。点击此处阅读SQL注入:SQL注入
所有SQL代码必须仅存在于服务器端或作为存储过程存在。只需将变量发送到服务器,然后在服务器端进行查询。为了避免黑客攻击,请阅读有关SQL注入的信息。
这不是很安全。也许你应该重新考虑你的建筑?但是,您的语法错误是因为SQL后面有额外的大括号。但是,如果您在回调
这里的要点是,真正应该访问数据库的是您的应用程序服务器(如果您在后端使用ASP,则为IIS),它反过来会侦听您的AJAX请求。因此,访问数据库的代码可能在服务器端,而不是与javascript函数混合,这可能会导致SQL注入攻击,如上面的另一个答案所述。
因此,您应该编写一些服务器处理程序来侦听AJAX调用,在该调用上放置该处理程序将用于构造SQL查询的参数,在数据库服务器上启动它,并返回带有结果的视图(或JSON数据)。
很抱歉,如果您不提供有关应用程序架构和所使用技术的更多详细信息,我将非常详细。
- 当客户端将两个按钮的javascript函数参数修改为相同时,SQL/PHP会更新多行
- 用sql数据库更新谷歌地图标记
- SQL生成的选择菜单,根据相关值更新文本框
- jQueryAjax SQL-如果我在多个用户上单击编辑,则Ajax会更新我单击的所有内容.不是最后一个点击
- 若data=0,则不更新(执行)表.(JavaScript/SQL)
- 单击按钮时更新表(SQL/JavaScript/HTML)
- 使用2个表单的SQL查询更新DIV
- 使用ajax和grails更新SQL数据库
- 从 SQL 数据库自动更新统计信息
- 新数据行上的 SQL 更新列
- 在不刷新页面的情况下更新 SQL 数据
- 如何更新在 SQL Server 数据库中发生某些更改时通过 jsp 显示的表内容
- 使用 SQL 信息更新选择下拉列表 (HTML)
- 使用 PHP 更新 SQL 数据库
- 我可以在我的JavaScript中包含php sql更新吗?
- 在javascript函数中更新sql
- AJAX Sql更新不起作用
- 我可以在ajax代码中编写SQL更新吗
- 不能插入SQL更新
- 下拉菜单用jquery和sql更新另一个下拉菜单