看着眼前的JavaScript,deleteMessage()
可以寫成如下,以避免混亂的字符串處理,並給你更好的反饋,同時調試:
function deleteMessage(msgID, userid) {
if (!confirm("Are you sure?")) { return false; }
var data = {
'action': 'delete',
'msgID': msgID,
'user': userid
};
$.ajax({
url:'messages.php',
data: data,
type: 'POST',
success: function(response) {
alert(response);//debug message
//window.location.reload()
},
error: function((jqXHR, textStatus, errorThrown) {
alert((typeof errorThrown == 'string') ? errorThrown : textStatus);//debug message
}
});
}
你可以選擇當一切都調試切換回$.post()
。
你會看到'action': 'delete'
是硬編碼的。這是一個小問題,但沒有必要將'刪除'傳遞給deleteMessage
,因爲這樣命名的函數不會執行其他任何操作。在構建HTML時,需要進行相應的更改。
供參考:'mysql_real_escape_string'用於輸入,沒有任何一點在輸出上調用它,你需要在messages.php中再次調用它,然後再插入。 – Louis
至於你的問題,你的代碼看起來不錯,你可以檢查你的messages.php頁面,問題可能在那裏。 – Louis
我應該尋找什麼?我撞到我的if語句來檢查POSTED值到最高。它之前的唯一一件事是一對包含幾頁和一個會話變量的聲明。 – user1406951