【问题标题】:trying to log out but keep getting error Warning: Division by zero on line 4?尝试注销但不断收到错误警告:第 4 行除以零?
【发布时间】:2016-01-08 21:28:54
【问题描述】:

一直在玩小项目以注销,但每次我尝试注销时都会出现此错误:

警告:第 4 行 /home2/beastly/public_html/test/logout.php 中除以零

警告:无法修改标头信息 - 第 4 行 /home2/beastly/public_html/test/logout.php 中的标头已由(输出开始于 /home2/beastly/public_html/test/logout.php:4)发送

警告:session_destroy() [function.session-destroy]:试图在第 8 行的 /home2/beastly/public_html/test/logout.php 中销毁未初始化的会话 如果没有点击这里,您将被转发回登录屏幕

<?php
//remove PHPSESSID from browser
if ( isset( $_COOKIE[session_name()] ) )
setcookie( session_name(), “â€, time()-3600, “/†);
//clear session from globals
$_SESSION = array();
//clear session from disk
session_destroy(); here

【问题讨论】:

  • 这里的时髦人物应该敲响警钟:setcookie( session_name(), “â€, time()-3600, “/†);
  • 已更改为:setcookie ("session_name", "", time() - 3600);警告:session_destroy() [function.session-destroy]:试图破坏 /home2/beastly/public_html/test/logout.php 中未初始化的会话
  • session_destroy() 仅在您在文件顶部调用 session_start() 时才有用。您可以删除“破坏”或添加“开始”。
  • 是的,谢谢

标签: php html session


【解决方案1】:

警告:除以零 /home2/beastly/public_html/test/logout.php 在第 4 行

来自这里..“/†..这应该是文件路径,而不是..不管那是什么。

警告:无法修改标头信息 - 标头已由 (输出开始于 /home2/beastly/public_html/test/logout.php:4) /home2/beastly/public_html/test/logout.php 在第 4 行

第一个错误发送阻止会话启动的标头。修复第一个,这个就会消失。

警告:session_destroy() [function.session-destroy]: 试图 销毁未初始化的会话 /home2/beastly/public_html/test/logout.php 在第 8 行

这是因为第一个错误发送的标头阻止了会话启动,所以没有要销毁的。

修复文件路径参数,其他一切都将恢复正常。

【讨论】:

    【解决方案2】:

    您的 PHP 代码似乎被不正确的字符集破坏了。如果你看第 4 行:

    setcookie( session_name(), “â€, time()-3600, “/†);
    

    你会注意到那里有一个除法运算符。

    如果您打开所有错误,您会看到它还在抱怨“未定义常量”“â€â€œâ€。最后一个,在数字上下文中,解析为零,这就是你得到被零除错误的原因。


    如果您在调用session_destroy() 时收到错误Trying to destroy uninitialized session,则该会话实际上并不存在。你事先打电话给session_start()了吗?除非您这样做,否则您无法操纵会话。

    【讨论】:

    • 是的,我刚刚意识到我已经适应了:setcookie ("session_name", "", time() - 3600);对问题进行了排序,但第 8 行仍然出现错误
    • @CesarNagera 第 8 行有什么错误?那是session_destroy()。您的代码实际上并没有“这里”,是吗?
    • 这只是我将代码插入这里的时候loool
    • 见上文回复:未初始化的会话错误。那应该回答这个问题。
    猜你喜欢
    • 1970-01-01
    • 2021-02-02
    • 2016-05-31
    • 1970-01-01
    • 2014-10-21
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    相关资源
    最近更新 更多