-1

我创建了一个基于 php/mysql 的聊天页面。它就像 gmail 聊天。一旦我点击在线成员,聊天框将在右下方打​​开。我有一个单独的聊天页面,其中包括 javascripts 和 css。它运作良好。

我遇到的问题是,我需要将该聊天页面添加到我的所有网页中。因为我的网站中有一些不同的区域。我希望我的会员即使访问我网站的另一个页面也能继续他们的聊天。

问题就在此时出现。我 <?php include('pathtomychat.php');?>在所有网页中都使用过。在线朋友显示正确。但如果我开始与某人聊天并突然访问另一个页面,则打开的聊天框在新页面中不再可见。如果我再次点击我已经聊天的成员,会出现聊天框,但我的聊天消息将不会收到该成员。

我已经尝试了数千次使用谷歌搜索来寻找答案,但我做不到。

我看到有这么多聊天脚本,只需使用小的 javascript 片段就可以在多个页面中运行良好。他们是如何做到的?我无法解决这个问题。如果您能说出为什么会发生这种情况以及我应该做些什么来克服这种情况,我将不胜感激。

非常感谢你

4

1 回答 1

1

我无法回答为什么有人会否定。我猜是因为你没有显示任何代码......

无论如何,关于你的问题。当您转到新页面时,您正在重新加载您的include "pathytomychat.php";哪个会杀死打开的任何内容并重新加载它。你必须包括一些方法来检查那个窗口是否打开,然后检查它是否打开......

马上,我会在你的 pathtomychat.php 中做这样的事情

//Check to see if any windows are open
if(isset($_SESSION['window_open']) && $_SESSION['window_open'] == 'yes') {
    openChatWindow();
}

function openChatWindow() {
    $_SESSION['window_open'] = 'yes';
    //the rest of the code that actually opens the window
}

当然,如果您使用 JS 打开窗口,您需要确保也以这种方式设置会话。您还可以使用 Cookie...

于 2012-06-27T04:41:04.797 回答