Session PHP会话未注册

Session PHP会话未注册,session,php,Session,Php,可能重复: 我使用的登录脚本有问题。问题是一些主机提供商在登录后会话未注册。在php错误日志中,我可以看到这个错误 PHP警告:未知:您的脚本可能依赖于PHP4.2.3之前存在的会话副作用。请注意,会话扩展不考虑全局变量作为数据源,除非启用了ReistSpGlobal。通过分别在第0行的“未知”中将session.bug\u compat\u 42或session.bug\u compat\u warn设置为off,可以禁用此功能和此警告 但在大多数主机中,如bluehost、hostmons

可能重复:

我使用的登录脚本有问题。问题是一些主机提供商在登录后会话未注册。在php错误日志中,我可以看到这个错误

PHP警告:未知:您的脚本可能依赖于PHP4.2.3之前存在的会话副作用。请注意,会话扩展不考虑全局变量作为数据源,除非启用了ReistSpGlobal。通过分别在第0行的“未知”中将session.bug\u compat\u 42或session.bug\u compat\u warn设置为off,可以禁用此功能和此警告

但在大多数主机中,如bluehost、hostmonster,它工作正常,没有任何错误。有人能告诉我我在这里做错了什么吗?提前谢谢你

代码:


错误的用户名或密码。请再试一次。

尝试替换
尝试替换
如中所述,不推荐使用
会话寄存器

你应使用:

//session_register("adminuser"); //deprecated
$_SESSION["adminuser"] = $adminuser;

如中所述,不推荐使用
session\u register

你应使用:

//session_register("adminuser"); //deprecated
$_SESSION["adminuser"] = $adminuser;
该手册涉及:

从PHP 5.3.0开始,此函数已被弃用,从开始删除 PHP5.4.0

只需使用
$\u SESSION['adminuser']
,就像使用任何其他变量一样。

有关以下内容的手册:

从PHP 5.3.0开始,此函数已被弃用,从开始删除 PHP5.4.0


只需使用
$\u SESSION['adminuser']
,就像使用任何其他变量一样。

不是答案,而是一个不适合注释的警告:

您正在反向处理密码。你在逃跑,然后又在逃跑。这是不正确的。考虑一个简单的密码:

o'brien
逃到哪里去了

o\'brien
然后是md5'd。该反斜杠将成为哈希值的一部分:

o'brien -> 255740509ca6c0e7d86c88fc4d8ddf9d
o\'brien -> afd5c6601a6df7e48d0ce5584b10bf12

请注意,散列值是完全不同的。如果你在别处比较散列值,而忘记了转义阶段,这可能会反过来咬你。

不是答案,而是一个不适合评论的警告:

您正在反向处理密码。你在逃跑,然后又在逃跑。这是不正确的。考虑一个简单的密码:

o'brien
逃到哪里去了

o\'brien
然后是md5'd。该反斜杠将成为哈希值的一部分:

o'brien -> 255740509ca6c0e7d86c88fc4d8ddf9d
o\'brien -> afd5c6601a6df7e48d0ce5584b10bf12

请注意,散列值是完全不同的。如果你在别处比较散列值而忘记了转义阶段,这可能会反过来咬你。

问题是你有一个与普通变量同名的变量

$_SESSION['yourvar'] = null;
$yourvar = 'something';

和:


会话\u寄存器不推荐使用
$\u会话['yourvar']
。函数会话寄存器导致错误。

问题在于您有一个与普通变量同名的变量

$_SESSION['yourvar'] = null;
$yourvar = 'something';

和:


会话\u寄存器不推荐使用
$\u会话['yourvar']
。函数会话寄存器导致错误。

。它们不再得到维护,并且已经开始使用。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果你选择PDO。。它们不再得到维护,并且已经开始使用。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果您选择PDO,。也删除无用的
?>正确。使用
?>
应限于您知道需要手动关闭PHP块的情况。否则将其保持打开状态,因为在文件结束时将自动关闭。同时删除无用的
?>正确。使用
?>
应限于您知道需要手动关闭PHP块的情况。否则,它将保持打开状态,因为它将在文件结束时自动关闭