【发布时间】:2020-04-28 05:37:20
【问题描述】:
这是我在 Ajax 上迈出的第一步,我已经在苦苦挣扎。我有一个插入数据库的请求,但我的代码目前的行为就像所有请求都成功一样,但我希望能够在更新数据库时处理错误。我想根据 MYSQL 响应来 alert() 一条成功/错误消息。
我的 Ajax 调用:
$("a.bgbtb").click(function(){
var btnid = $(this).attr("id").split('newbudbtn-')[1];
var newbudget = $("INPUT[id=newbud-"+btnid+"]").val();
var platform = $("span#"+btnid).text();
$.ajax({
url:"campbdgtedit.php",
method:"POST",
data:{platform:platform, btnid:btnid, newbudget:newbudget},
success:function(data){
myAlertTop();
}
});
});
campbdgtedit.php:
$query = "INSERT INTO campaigns (camp_budget, camp_campaignid) VALUES ('".$_POST['newbudget']."', '".$_POST['btnid']."')";
if ($conn->query($query) === TRUE) {
echo "Success<br/>";
} else {
echo "Error: " . $query . "<br>" . $conn->error;
}
如果查询中有错误,我如何捕捉并相应地处理我的警报?我已经尝试了很多我在这里找到的解决方案,但我似乎无法让它们发挥作用。
【问题讨论】:
-
这是一个非常好的问题,很高兴您正在考虑如何正确处理错误。您使用的是什么数据库扩展; MySQLi、PDO 等?
-
另外,如果您可以链接到您检查过的其他解决方案并尝试解释它们如何不适合您,那就太好了。这将有助于缩小问题的根源。
-
我使用的数据库是 MySQLi 和我检查过的解决方案,尽管我试图让它们适用于我的情况,它们有不同的目标和不同的代码,我只是复制/粘贴希望它可能会奏效,但我不了解事情是如何运作的,我注定要失败。
-
success:function(data){ console.log(data) }data是从php/db返回的信息