在我来到这里之前,我已经阅读了很多不同的东西试图解决这个问题。 无论如何我得到了
"Notice: Undefined index: Username in C:\xampp\htdocs\home\header.php on line 18"
我无法弄清楚我做错了什么。 我习惯使用cookies而不是会话,所以这有点不同。
以下是代码。
的index.php
<table class='siteTable'>
<tr>
<td class='account'>
<?php
if(!$ULN){
echo"
<div class='settings1'>
<center>Login</center>
<br />
</div>
<div class='settings2'>
<center>Register</center>
<br />
</div>
";
} else {
echo"
Logged In!
";
}
?>
</td>
<td>
</td>
</tr>
</table>
<?php include("footer.php"); ?>
的header.php
<?php
ob_start();
?>
<html>
<head>
<link href='css/style.css' type='css/text' rel='stylesheet'>
</head>
<body style='background-image:url("darkbg.png");'>
<?php
include("database.php");
?>
<div class='mainDiv' style='background-image:url("mdbg.png");'>
<div class='siteBanner' style='background-image:url("siteBanner.png");'></div>
<?php
session_start();
$LoggedIn = mysql_query("SELECT * FROM Users WHERE Username='".$_SESSION['Username']."'");
$ULN = mysql_fetch_object($LoggedIn);
$banner = true;
if($banner == true){
echo"<div class='Banner'>In the works.</div>";
}
?>
<div class='siteLinks'>
<ul>
<a href='index.php'>
<li>
Home
</li>
</a>
<a href='#catalog.php'>
<li>
Catalog
</li>
</a>
<a href='#users.php'>
<li>
Users
</li>
</a>
<a href='#forum.php'>
<li>
Forum
</li>
</a>
</ul>
</div>
<div class='siteContent'>
我正在使用
"$LoggedIn = mysql_query("SELECT * FROM Users WHERE Username='".$_SESSION['Username']."'");
$ULN = mysql_fetch_object($LoggedIn);"
检查用户是否已登录,这就是问题所在。 对不起,如果已经回答了这个问题,如果是这样的话我就找不到了。 我找到的只是用户$ _POST或$ _GET的东西。
答案 0 :(得分:1)
请告诉您如何调试自己的代码,而不是告诉您这个实例中的错误。这些是根据错误消息确定问题的步骤。
$ LoggedIn = mysql_query(“SELECT * FROM Users WHERE Username ='”。$ _ SESSION ['Username']。“'”);
if(isset($_SESSION['Username'])) { $LoggedIn = mysql_query("SELECT * FROM Users WHERE Username='".$_SESSION['Username']."'"); $ULN = mysql_fetch_object($LoggedIn); } else { $ULN = false; }
答案 1 :(得分:0)
在执行查询之前检查$_SESSION['Username']
。新访客不会设置该会话变量。
if (isset($_SESSION['Username'])) {
$LoggedIn = mysql_query("SELECT * FROM Users WHERE Username='".$_SESSION['Username']."'");
$ULN = mysql_fetch_object($LoggedIn);
}