PHP会话新手,错误

Nig*_*ght -4 html php session

所以我试图使用会话......我收到此错误:

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home1/####/public_html/####/index.php:3) in /home1/####/public_html/####/index.php on line 4
Run Code Online (Sandbox Code Playgroud)

index.php文件:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<?php
    session_start();
    echo $_SESSION['logged_in'];
    echo $_SESSION['logged_user'];
?>
<head>
Run Code Online (Sandbox Code Playgroud)

任何想法为什么会这样?

Joh*_*nde 6

输出HTML或任何内容后,PHP无法再发送使用会话所需的标头(即设置cookie).您必须session_start() 从脚本生成任何输出之前调用:

<?php
    session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<?php
    echo $_SESSION['logged_in'];
    echo $_SESSION['logged_user'];
?>
<head>
Run Code Online (Sandbox Code Playgroud)

  • 这是重复的. (2认同)
  • 请标记为重复而不是回答,你不需要代表点;-) (2认同)