我對登錄表單有個小問題。 當我打開form.php的它的顯示這個錯誤:爲什麼要顯示這個錯誤以及我如何修復
注意:未定義指數:ID在C:\ XAMPP \ htdocs中\ form.php的上線3
但是,當我在form.php的記錄一切好的。我的問題是我如何解決這個錯誤,是否有我的代碼中的漏洞?
的login.php
<?php
/*
// Start Session
session_start();
// Database connection
require __DIR__ . '/database.php';
$db = DB();
// Application library (with DemoLib class)
require __DIR__ . '/lib/library.php';
$app = new DemoLib();
$login_error_message = '';
$register_error_message = '';
// check Login request
if (!empty($_POST['login'])) {
$user = trim($_POST['user']);
$pass = trim($_POST['pass']);
if ($user == "") {
echo '<pre>';
echo 'Plese select username';
echo '</pre>';
} else if ($pass == "") {
echo '<pre>';
echo 'Please select pass';
echo '</pre>';
} else {
$id = $app->Login($user, $pass); // check user login
if($id > 0)
{
$_SESSION['id'] = $id; // Set Session
header("Location: form.php"); // Redirect user to the profile.php
}
else
{
echo '<pre>';
echo 'Error';
echo '</pre>';
}
}
}
?>
和我form.php的
<?php
$user = $app->UserDetails($_SESSION['id']); // get user details
if (isset ($user->id)) { ?>
<span>Hello, <b><?php echo $user->user ?><b></span>
<p><a href="#">Add article</a></p>
<p><a href="#">Remove article</a></p>
<p><a href="#">Add news</a></p>
<p><a href="logout.php">Log out</a></p>
<?php } else { ?>
<form action="form.php" method="post">
<p>username:<p>
<input type="text" name="user">
<p>Password:</p>
<input type="password" name="pass">
<input type="submit" name="login" value="Login">
</form>
<br>
<?php } ?>
'/ *'<<<在這裏是個大問題。 –
首先刪除評論/ *在login.php。然後當你打開form.php時,錯誤意味着$ _SESSION數組沒有設置索引'id'的任何元素。當你使用login.php時,$ _SESSION ['id']被設置。 –