gpt4 book ai didi

PHP Session_start 挂起

转载 作者:可可西里 更新时间:2023-11-01 13:18:48 27 4
gpt4 key购买 nike

有点奇怪的问题,好的,这是我的设置...

  1. domain.com 调用从 sub.domain.com 上的 Iframe 读取数据
  2. sub.domain.com 对 sub.domain.com/call.php 进行 ajax 调用
  3. sub.domain.com 返回对 domain.com 的 ajax 调用

又名长轮询

现在,当没有 session 数据时一切正常(我关闭浏览器并重新启动页面)。但是,一旦我重新加载页面并且它们是 session 数据,call.php 就会执行 start_session() 并卡在那里。

我几乎尝试了所有方法,但无法解决这个问题。我试过销毁 session 、取消设置所有 session 变量、修改一些 ini 设置,但没有任何效果。

这是 session 数据所在的 call.php 代码...

session_start();

$sql = ("SELECT userid FROM status WHERE typing = '".mysql_real_escape_string($userid)."'");
$result = mysql_query($sql);

if ($result && mysql_num_rows($result) > 0) {
$row = mysql_fetch_array($result);
$typing_id = $row['userid'];
if (!empty($typing_id)) {
if (isset($_SESSION['typing2'])) {
unset($_SESSION['typing2']);
}
} else {
$typing_id = "-1";
}
} else {
$typing_id = "-1";
if (isset($_SESSION['typing'])) {
unset($_SESSION['typing']);
}
}

if ($_SESSION['typing'] != $typing_id && !isset($_SESSION['typing2']) || $initialize == "1") {
$typing = array('typing_id' => $typing_id);
}

if ($typing_id == "-1") {
$_SESSION['typing2'] = "-1";
} else {
$_SESSION['typing'] = $typing_id;
}

有人有什么想法吗?我在想这可能与域有关,但我不确定。

谢谢!

最佳答案

我实际上发现(经过数小时的调试和研究)问题是由 PHP session 锁定引起的。然后,当新页面加载时,它不会工作,直到旧 session 超时。 session_write_close() 将修复它。

关于PHP Session_start 挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2323734/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com