我正在开发一个PHP /
javascript聊天.
@H_404_1@当用户登录时,他/她的用户名被插入到称为队列的MySQL表中.
此插入返回将存储在名为$_SESSION [‘CHAT_QUEUE_ID’]的会话变量中的MysqL_insert_id() @H_404_1@当用户关闭页面时,我需要删除MysqL表行. @H_404_1@我试过以下,但没有成功: @H_404_1@js文件
此插入返回将存储在名为$_SESSION [‘CHAT_QUEUE_ID’]的会话变量中的MysqL_insert_id() @H_404_1@当用户关闭页面时,我需要删除MysqL表行. @H_404_1@我试过以下,但没有成功: @H_404_1@js文件
window.onbeforeunload = closeSession; function closeSession(){ $.ajax({ url: "/chat/process/chat.PHP",type: "GET" }); return "disconnected"; }@H_404_1@chat.PHP
$delete= "DELETE FROM queue WHERE id = " . $_SESSION['CHAT_QUEUE_ID']; // query,etc@H_404_1@有没有办法做到这一点?
你启动ajax异步(默认为jquery – ajax).但浏览器不会等待卸载任何东西.
@H_404_1@尝试在ajax设置中设置async:false.但是,您永远都不能确定这会在所有浏览器中都可以工作.
@H_404_1@看到这里的评论:
http://api.jquery.com/unload/#dsq-comment-body-132164390
http://api.jquery.com/unload/#dsq-comment-body-132164390