警告:session_start():无法发送会话cookie - 已经发送的头信息(输出开始于 [英] Warning: session_start(): Cannot send session cookie - headers already sent by (output started at

查看:847
本文介绍了警告:session_start():无法发送会话cookie - 已经发送的头信息(输出开始于的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

登录页面中包含以下警告: 其在localhost中工作,但不在远程主机中

警告: session_start()[function.session-start]:无法发送会话cookie - 已发送的头信息(输出从第8行开始)



警告: session_start()[function.session-start]:无法发送会话缓存限制器 - 已发送的头文件(输出从第8行开始)





index.php



 <?php 
session_start();
if(isset($ _ SESSION ['usr'])& isset($ _ SESSION ['pswd'])){
header('Location:content.php');}
?>
< body>
< center>
< form method ='post'action ='login.php'>
<! - 在这个例子中,我将它与login.php链接以检查密码&用户名 - >
< table>
< tr>< td>使用者名称:< / td>< td>< input type ='text'name ='usr'>< / td>< / tr>
< tr>< td>密码:< / td>< td>< input type ='password'name ='pswd'>< / td>
< / tr>
< tr>< td>< input type ='submit'name ='login'value ='Login'>< / td>
< td>< input type ='reset'name ='reset'value ='Reset'>< / td>< / tr>
< / table>
< / form>
< / center>
< / body>



content.php



 <身体GT; 
< a href =resumedownload.php>点击此处下载恢复< / a>
<?php
session_start();
if(!isset($ _ SESSION [usr])||!isset($ _ SESSION [pswd])){
header('Location:index.php');}
包含'logoff.php';
?>
< / body>



login.php



 <身体GT; 
<?php
session_start();
if($ _ REQUEST ['usr'] =='suman.trytek'&& $ _REQUEST ['pswd'] =='solutions'){
$ _SESSION ['usr'] = 'suman.trytek';
$ _SESSION ['pswd'] ='解决方案';
header('Location:content.php');
}
else {
header('Location:index.php');
}
?>
< / body>


解决方案

移动 session_start() ; 总是在页面顶部。

 <?php 
@ob_start( );
session_start();
?>


The following warning comes in login page: Its working in localhost but not in remote host

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at on line 8)

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at on line 8)

index.php

<?php
session_start();
if(isset($_SESSION['usr']) && isset($_SESSION['pswd'])){
header('Location: content.php');}
?>
<body>
<center>
<form method='post' action='login.php'>
<!– in this example I link it with login.php to check the password & username–>
<table>
<tr><td>Username:</td><td><input type='text' name='usr'></td></tr>
<tr><td>Password:</td><td><input type='password' name='pswd'></td>
</tr>
<tr><td><input type='submit' name='login' value='Login'></td>
<td><input type='reset' name='reset' value='Reset'></td></tr>
</table>
</form>
</center>
</body>  

content.php

<body>
<a href="resumedownload.php">Click here to Download to Resume</a>
<?php
session_start();
if(!isset($_SESSION["usr"]) || !isset($_SESSION["pswd"])){
 header('Location: index.php');}
include 'logoff.php';
?>
</body>

login.php

<body>
<?php
session_start();
if($_REQUEST['usr']=='suman.trytek' && $_REQUEST['pswd']=='solutions'){
$_SESSION['usr'] = 'suman.trytek';
$_SESSION['pswd'] = 'solutions';
header('Location: content.php');
}
else{
header('Location: index.php');
}
?>
</body>

解决方案

Move the session_start(); to top of the page always.

<?php
@ob_start();
session_start();
?>

这篇关于警告:session_start():无法发送会话cookie - 已经发送的头信息(输出开始于的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆