我希望有人可以建议/指导/阐明:
我有一个使用Authlogic进行身份验证的rails应用程序。 我想将cometchat纳入这个应用程序 - (实际上任何聊天IM都可以 - 但是cometchat似乎很合适因为ajax-im不喜欢windows)
环境如下:rails应用程序正在Windows机器上运行 - 并且可供本地网络使用(无互联网) 所以为了能够使用cometchat - 我正在运行WAMP服务器。
进入php的细节(我完全不知道)
authlogic为我保留了我的用户会话。
但是为了让cometchat工作,我需要传递当前用户的getUserID函数。 (彗星聊天假设有一个php会话变量 - 但我没有这个用rails)
那么如何将rails会话用户传递给getUserID函数。
该函数如下所示: * function getUserID(){ $ userid = 0;
if (!empty($_SESSION['userid'])) {
$userid = $_SESSION['userid'];
}
return $userid;
} *
下一个函数与朋友列表有关 - 但是我确定一旦有了当前用户,这可以通过php页面内的sql解决。
再次 - 欢迎所有和任何指导。即使它意味着另一种聊天解决方案。
非常感谢提前。
答案 0 :(得分:0)
akza,
您可以在Cookie中存储当前登录用户的用户ID(数字,非零,唯一,最好是您的用户表中的主键)'userid_for_cometchat'
并可以在PHP中以 $ _ COOKIE ['userid_for_cometchat'] 的形式访问它
所以 getUserID()应如下所示:
function getUserID() {
$userid = 0;
if (!empty($_COOKIE['userid_for_cometchat'])) {
$userid = $_COOKIE['userid_for_cometchat'];
}
return $userid;
}
您需要在登录时创建此cookie,并确保在注销时销毁它。
这应该很好。
CometChat支持团队非常擅长做这些事情,他们为我做了很多自定义修改,我对他们的工作非常满意。