未定义索引:第927行C:\xampp\htdocs\hms\login.php中的用户名
我在注销和销毁创建的会话时遇到问题。反馈为:未定义索引:第927行C:\xampp\htdocs\hms\login.php中的用户名,php,mysql,apache,Php,Mysql,Apache,我在注销和销毁创建的会话时遇到问题。反馈为: Notice: Undefined index: username in C:\xampp\htdocs\hms\login.php on line 927 Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\hms\login.php:241) in C:\xampp\htdocs\hms\l
Notice: Undefined index: username in C:\xampp\htdocs\hms\login.php on line 927
Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\hms\login.php:241) in C:\xampp\htdocs\hms\login.php on line 927
Notice: Undefined variable: _SESSION in C:\xampp\htdocs\hms\login.php on line 928
Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\hms\login.php:241) in C:\xampp\htdocs\hms\login.php on line 929
这些行中引用的代码是
第241至275行:
<?php
require("include/dbinfo.php");
$link=mysql_connect($server,$user,$pass)or die(errorReport(mysql_error()));
mysql_select_db($db,$link)or die(errorReport(mysql_error()));
if(!isset($_GET['pid']))
{
echo "<div><link rel=\"stylesheet\" href=\"css/style01.css\">";
$username=$_COOKIE['username'];
$sessionid=$_COOKIE['PHPSESSID'];
$row=mysql_query("select * from session where username='$username' and id='$sessionid'");
if(!empty($row)&&(mysql_num_rows($row)))
{
$result=mysql_query("select * from employee where Employee_ID='$username'");
if($row=mysql_fetch_array($result))
{
$name=$row['Name'];
$eid=$row['Employee_ID'];
$dept=$row['Dept_No'];
$gender=$row['Gender'];
$contact=$row['Contact'];
$dob=$row['DOB'];
$add=$row['Address'];
echo "<h3>Personal Details</h3>";
echo "<table border=0 cellpadding=1 cellspacing=0 style=\"margin:5px 0px 0px -3px;\">";
echo "<tr><td width=5%>Name: </td><td width=50%>$name</td></tr>";
echo "<tr><td>Employee ID: </td><td>$eid</td></tr>";
echo "<tr><td>Date of Birth: </td><td>$dob</td></tr>";
echo "<tr><td>Department: </td><td>$dept</td></tr>";
echo "<tr><td>Contact: </td><td>$contact</td></tr>";
echo "<tr><td>Gender: </td><td>$gender</td></tr>";
echo "<tr><td>Address: </td><td>$add</td></tr>";
echo "</table>";
}
}
echo "</div>";
注意:未定义索引:第927行C:\xampp\htdocs\hms\login.php中的用户名
您使用的是$\u POST['username']
,但我认为您的意思是使用$username
警告:无法修改标题信息-第927行C:\xampp\htdocs\hms\login.php中已发送的标题(输出从C:\xampp\htdocs\hms\login.php:241开始)
您只能在回显任何内容之前修改cookie。您可以在修改此项之前不回显,也可以使用ob\u start
捕获任何输出
注意:未定义的变量:\ C:\xampp\htdocs\hms\login.php中的会话,第928行
您缺少一个会话\u start
呼叫
您的会话未启动或启动太晚:您应该在代码开头使用session\u start()
启动会话
由于会话在用户浏览器上设置了cookie,因此在调用session\u start()
或setcookie()
时,不能将http响应发送到浏览器
基本上,在调用session\u start()
或setcookie()之前,应该避免调用echo
如果无法在当前代码中执行此操作,则可以在调用setcookie()函数之前使用来阻止echo
发送响应 您取消设置取消设置($_SESSION['PHPSESSID'])代码>但是您没有会话\u start()
来启动它。请将它放在后面的右上方,您使用了$\u SESSION变量,但没有启动任何会话,我错了吗?您应该添加一个session_start();如果在文档顶部没有其他位置?我尝试在代码开头启动会话,但它再次带来错误报告。有没有办法:解析错误:语法错误,C:\xampp\htdocs\hms\login.php中的意外“require”(T_require)在第243行这个新错误似乎不相关:解析错误意味着脚本第243行的代码语法不正确(第243行包含第一个“意外字符”),但可能是由于上一行末尾的错误)。可能是丢失了一个代码>?。感谢您的回复。我已经启动了一个会话,更改$\u POST['username']$username。后来我发现仍然有这样一条错误消息:警告:无法修改标题信息-标题已经发送(输出开始于…),因此我决定在脚本开始时使用:并
else if(isset($_GET['pid'])&&(strcmp($_GET['pid'],"logout")==0))
{
$username=$_COOKIE['username'];
$sessionid=$_COOKIE['PHPSESSID'];
if(mysql_query("select * from session where username='$username' and id='$sessionid'"))
{
$result=mysql_query("delete from session where username='$username'and id='$sessionid'");
setcookie("username",$_POST['username'],time()-3600);
unset($_SESSION['PHPSESSID']);
header('Location: index.php');
}
echo "</div>";
setcookie("username",$_POST['username'],time()-3600);
setcookie("username",$username,time()-3600);