摘要
我有一个php脚本,它正在对我的数据库进行查询,除了我当前登录的用户用户名外,所有内容都正确插入。我最终得到了我的db global用户名。
用户名作为会话$\u session['username']传递,我可以回显正确的名称,print\r($\u session)显示所有正确的值。
便笺.php
<?php
session_start();
print_r($_SESSION);
// if user is not logged in
if (!$_SESSION['username']) {
header('Location: home.php');
}
// when user creates new note
if ($_POST['create_note']) {
include('includes/functions/func_sanitize.php');
$username = $_SESSION['username'];
$note_name = validate_form_data($_POST['note_name']);
// connect to db
include('includes/connection.php');
// make query to db and return the results
$query = "INSERT INTO `notes` (`id`, `username`, `note_name`, `note_content`, `date_created`) VALUES (NULL, '$username', '$note_name', '', CURRENT_TIMESTAMP)";
$result = mysqli_query($conn, $query);
// close db connection
if ($result) {
mysqli_close($conn);
} else {
mysqli_close($conn);
echo 'Error: '.$query.'<br>'.mysqli_error($conn);
}
}
include('includes/header.php');
?>
<div class="notes-container container-fluid pt-4">
<div class="row mb-5">
<div class="col-12">
<div class="row">
<div class="saved-notes col-10 offset-1 col-md-4 offset-md-0">
<header class="text-center">
<h2><?php echo $_SESSION['username']; ?></h2>
</header>
<div class="pt-2">
<form action="<?php htmlspecialchars($_SERVER['PHP_SELF']); ?>" class="form-inline px-1" method="POST">
<input class="form-control mb-1 mr-1" name="note_name" type="text">
<input name="create_note" type="submit">
</form>
</div>
</div><!-- col -->
<div class="current-note col-10 offset-1 col-md-8 offset-md-0">
<header class="text-center">
<h2>Current Note</h2>
</header>
<form action="<?php htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="POST">
<textarea name="note_content"></textarea>
<input class="btn btn-success btn-lg" name="note_submit" type="submit" value="Save">
</form>
</div><!-- col -->
</div><!-- row -->
</div><!-- col -->
</div><!-- row -->
<?php include('includes/footer.php'); ?>
您可以在脚本的顶部看到,我检查用户是否使用if($_会话['username']),这是正常工作的,就像我在回显$\u会话['username']之前所说的一样。
1条答案
按热度按时间goqiplq21#
已解决
我将connection.php进一步包含在脚本中,它覆盖了$username=$\u session['username']变量。将include('includes/connection.php')进一步向上移动脚本解决了我的问题。