作者andy910389 (夢想。追逐)
看板Ajax
標題[問題] 紀錄離開網頁的時間
時間Wed Mar 16 17:08:24 2011
請問一下,我現在想寫一個讓使用者離開網頁時,可以將當下時間記錄起來,
我用的是onbeforeunload 這個函式
當使用者離開網頁時,就跳出對話框,如果按確定,就將當前時間寫入純文字文件
可是現在出現一個問題,不知道為何, 剛開啟網頁時他就馬上把當前時間寫入純文字
文件了 並沒有等到我按確定 並關掉網頁後才執行這個動作
找了好幾個小時了 一直不知道問題在哪 只好上來求救
請前輩可以幫我看看這個簡短的程式碼 問題出在哪>< 感激不盡!!!
<html>
<SCRIPT LANGUAGE="JavaScript">
function closeWin()//記錄時間的函式
{
if (confirm('您確定要離開此頁面嗎?'))
{
<?
date_default_timezone_set("Asia/Taipei");
$leave_date = date("l F j Y h:i:s A", time());
$msg="離開時間:";
$filename = 'test.txt'; // 檔案名稱
$fp = fopen($filename, "a") // 開啟檔案
or exit("檔案 $filename 開啟錯誤<br>");
fwrite($fp, "\r\n");
fwrite($fp,$msg); // 寫入檔案
fwrite($fp,$leave_date); // 寫入檔案
fwrite($fp, "\r\n");
fclose($fp); // 關閉檔案
?>
}
}
</script>
<head>
</head>
<body onbeforeunload ="closeWin();">
</body>
</html>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.25.187.129
1F:推 JYHuang:................................前端,後端,傻傻分不清 03/16 17:17
2F:→ andy910389:不好意思 我初學JS 樓上可以說明清楚一點嗎@@ 03/16 17:35
3F:推 scribeTW:PHP會把全部結果跑完才送給瀏覽器,這樣可以理解嗎? 03/16 19:22
4F:→ andy910389:對耶 而且我看到JS不能呼叫PHP...那有方法可以解決嗎? 03/16 19:32
5F:→ terlin10:js是客戶端語言,php是後端的… 03/16 20:11
6F:→ B9:用 ajax 傳回去 03/16 21:16
7F:→ B9:如果讓我來做的話,會在 onunload 的時候跳個 alert 出來, 03/16 21:16
8F:→ B9:出來爭取時間,同時讓 ajax 把資料傳回去 server 03/16 21:17