加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何执行ajax函数onbeforeunload?

发布时间:2020-12-13 16:28:55 所属栏目:PHP教程 来源:网络整理
导读:我正在开发一个php / javascript聊天. 当用户登录时,他/她的用户名被插入到称为队列的MySQL表中. 此插入返回将存储在名为$_SESSION [‘CHAT_QUEUE_ID’]的会话变量中的mysql_insert_id() 当用户关闭页面时,我需要删除MySQL表行. 我试过以下,但没有成功: js
我正在开发一个php / javascript聊天.

当用户登录时,他/她的用户名被插入到称为队列的MySQL表中.
此插入返回将存储在名为$_SESSION [‘CHAT_QUEUE_ID’]的会话变量中的mysql_insert_id()

当用户关闭页面时,我需要删除MySQL表行.

我试过以下,但没有成功:

js文件

window.onbeforeunload = closeSession;
function closeSession(){
    $.ajax({
        url: "/chat/process/chat.php",type: "GET"
    });
    return "disconnected";
}

chat.php

$delete= "DELETE FROM queue WHERE id = " . $_SESSION['CHAT_QUEUE_ID'];
// query,etc

有没有办法做到这一点?

你启动ajax异步(默认为jquery – ajax).但浏览器不会等待卸载任何东西.

尝试在ajax设置中设置async:false.但是,您永远都不能确定这会在所有浏览器中都可以工作.

看到这里的评论:
http://api.jquery.com/unload/#dsq-comment-body-132164390

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读