我做了一個短期遊戲,其中人們給出了順序提出的問題的答案,並且他們的分數存儲在用正確答案更新的變量中(即 var Score = 0; function ScoreUpdate {if (event.keyCode == correctAnswer) {Score = Score +1;}}
)。最後,調用JavaScript函數將這些變量放入一個表單中,隨後將其「POST」到一個頁面,然後將所有內容添加到MySQL數據庫中。表格提交窗口關閉
問題是,有些人會中途停下來,只需關閉窗口/選項卡,導致沒有提交任何分數(因爲將所有變量放入表單並提交它的JavaScript函數未激活)。因此,我正在尋找一種方法,可以在用戶關閉窗口時自動激活保存分數的功能,提交表單並上傳到數據庫。這涉及到PHP和JS,因此我想知道是否所有這些在一個事件中甚至是可能的? (即window.onbeforeunload?)
我試過這個解決方案:https://stackoverflow.com/a/1632004/1092247,但它不包括自動錶單提交(它甚至不提供對我來說一般的工作,因爲它甚至在提交表單時仍會提示) 。
正如你所看到的,我在這裏比較新,遠沒有高級的JS和PHP知識。任何幫助將非常感謝! :)
我會建議在每個答案上提交數據給服務器,而不是在本地更新結果,然後在測驗結束時提交。這樣,如果他們在測驗中退出,您至少可以保存一些結果 – 2012-01-31 16:07:40