jQueryを介してデータベースに新しいデータを追加するフォームがページにあります。正常に動作しますが、サーバーが機能しなくなり、500(内部サーバーエラー)が発生することがありますが、これはサーバーが機能しなくなったためです。
問題は、PHPがデータベースに追加した後にサーバーエラーが発生することがありますが、追加が行われたにもかかわらず、成功メッセージが表示される代わりにエラーが発生することです。では、エラーが発生した場合にPHPがデータを追加しないようにするには、どうすればよいでしょうか。
[はい、最終的には新しいサーバーに切り替えますが、完璧なサーバーはありません]
スクリプトは次のとおりです。
$.ajax({
type: "POST",
url: "/clase/do-add",
data: $("#add").serialize(),
dataType: "json",
timeout: 8000,
beforeSend: function() {
var icon = '<p class="loading-add"></p>'; // loading icon
$('form#add').append(icon);
},
success: function(data) {
if (data.error == true) { // php returns error = true if name is invalid
alert('Invalid name.');
$('form#add').find('p').remove();
} else {
// make the addition
}
},
error: function () {
$('form#add').find('p').remove();
alert('Error. Try again.');
}
});