Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.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
Php 为什么我的变量$userstr似乎只有值“quot;()“什么;?_Php_Html_Session - Fatal编程技术网

Php 为什么我的变量$userstr似乎只有值“quot;()“什么;?

Php 为什么我的变量$userstr似乎只有值“quot;()“什么;?,php,html,session,Php,Html,Session,在我的header.php文件中,在第10行,我分配了$user=$\u SESSION['user']的值和分配$userstr=“$user”值后的两行 但是,当在和中的HTML echo语句(第15行)中调用$userstr变量时,显示的所有内容都是parenthase,而不是$user=$\u SESSION['user'] 基本上,在和中,它显示了$userstr=“()” 这不仅发生在这个php文件上,而且发生在项目的所有页面上 为什么会这样 <?php //header.ph

在我的
header.php
文件中,在第10行,我分配了
$user=$\u SESSION['user']的值和分配
$userstr=“$user”值后的两行

但是,当在
中的HTML echo语句(第15行)中调用
$userstr
变量时,显示的所有内容都是parenthase,而不是
$user=$\u SESSION['user']

基本上,在
中,它显示了
$userstr=“()”

这不仅发生在这个php文件上,而且发生在项目的所有页面上

为什么会这样

<?php //header.php
$n = "\n";
session_start();
echo "<!DOCTYPE html>$n<html>$n<head>$n<script type='text/javascript' src='OSC.js'></script><script type='text/javascript' src='ajaxrequest.js'></script>$n";
include 'functions.php';

$userstr = ' (Guest)';

if (isset($_SESSION['user'])) {
    $user = $_SESSION['user'];
    $loggedin = TRUE;
    $userstr = " $user";
} else $loggedin = FALSE;

echo "<title>$appname$userstr</title>$n" .
     "<link rel='stylesheet' href='styles.css' type='text/css' />" .
     "</head>$n<body>$n<div class='appname'>$appname$userstr</div>";

if ($loggedin) {

    echo "</br><ul class='menu'>" .
         "<li><a href='members.php?view=$user'>Home</a></li>" .
         "<li><a href='members.php'>Members</a></li>" .
         "<li><a href='friends.php'>Friends</a></li>" .
         "<li><a href='messages.php'>Messages</a></li>" .
         "<li><a href='profile.php'>Edit Profile</a></li>" .
         "<li><a href='logout.php'>Log out</a></li></ul></br>";

} else {

    echo "</br><ul class='menu'>" .
         "<li><a href='index.php'>Home</a></li>" .
         "<li><a href='signup.php'>Sign Up</a></li>" .
         "<li><a href='login.php'>Log In</a></li></ul></br>" .
         "<span class='info'>&#8658; You must be logged in to " .
         "view this page.</span></br></br>";
}
?>

正如Jeremy Miller所提到的,
$\u会话['user']
中的值真的存在吗?删除引号$userstr=“$user”;尝试删除
$userstr=“$user”中的引号
--
$userstr=$user
和这个
$userstr='(Guest)'()
显示为字符串,则code>应该用双引号括起来<代码>$userstr=“(来宾)”
试试
var\u dump($user)
看看它会显示什么。我会先看看
if($user=”“| |$pass==”){
哪里缺少
=
谢谢。我被叫去参加一个商务会议,很高兴这个问题被标记为已回答。不客气,我肯定那个笨蛋会感谢“你”.我们想知道你去哪里了,哈哈!功劳归于你,杰里米。@JeremyMiller
<?php // login.php
include_once 'header.php';
echo "<div class='main'><h3>Please enter your details to log in.</h3>";
$error = $user = $pass = "";

if (isset($_POST['user']) &&
    isset($_POST['pass'])) {

    $user = sanitizeString($_POST['user']);
    $pass = sanitizeString($_POST['pass']);
    $pretoken = md5($pass);
    $token = md5($pretoken);
    $query = mysql_num_rows(queryMysql("SELECT user,pass FROM members WHERE user ='$user' AND pass='$token'"));

    if ($user = "" || $pass == "") {

        $error = "Not all fields were entered.</br>";
    } else {

        if (!$query) {
            echo <<<END_
<form method='post' action='login.php'>$error
<span class='fieldname'>Username</span>
<input type='text' maxlength='16' name='user'/></br>
<span class='fieldname'>Password</span>
<input type='text' maxlength='16' name='pass'/></br>
<span class='fieldname'>&nbsp;</span>
<input type='submit' value='Log In' />
</form></br></div></body></html>
END_;
            $error = "<span class='error'>Username/Password invalid</span></br></br>";
        } else {
                $_SESSION['user'] = $user;
                $_SESSION['pass'] = $token;
                /*die("You are now logged in. Please <a href='members.php?view=$user'>" . "click here</a> to continue.</br></br>");*/
                header("Location: index.php");
        }
    }
} elseif (isset($_SESSION['user'])) {
    echo "You are already logged in.";
} else {
echo <<<END_
<form method='post' action='login.php'>$error
<span class='fieldname'>Username</span>
<input type='text' maxlength='16' name='user'/></br>
<span class='fieldname'>Password</span>
<input type='password' maxlength='16' name='pass'/></br>
<span class='fieldname'>&nbsp;</span>
<input type='submit' value='Log In' />
</form></br></div></body></html>
END_;
}
?>
if ($user = "" || $pass == "")
if ($user == "" || $pass == "")