Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
未定义索引:第927行C:\xampp\htdocs\hms\login.php中的用户名_Php_Mysql_Apache - Fatal编程技术网

未定义索引:第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);