gpt4 book ai didi

php - 在 Session 中存储变量

转载 作者:行者123 更新时间:2023-11-28 23:23:30 25 4
gpt4 key购买 nike

我想从我的 mysql 数据库中存储在 $_SESSION 中提交表单的用户的 user_level我的代码目前是这样的:

    <form id='login' action='<?php echo $fgmembersite->GetSelfScript(); ?>' method='post' accept-charset='UTF-8'>
<fieldset >
<?php
if(isset($_POST['submitted']))
{
session_start();
if($fgmembersite->Login())
{

$mysqli = new mysqli('host', 'name', 'psw', 'db');
if ($result = $mysqli->query("SELECT user_level FROM users WHERE username='$username'")) {

$_SESSION['user_level'] = $result;
}
$fgmembersite->RedirectToURL("loginhome.php");

}

}
?>

<legend>Login</legend>

<input type='hidden' name='submitted' id='submitted' value='1'/>

<div class='short_explanation'>* benötigte Felder</div>

<div><span class='error'><?php echo $fgmembersite->GetErrorMessage(); ?></span></div>
<div class='container'>
<label for='username' >Benutzername*:</label><br/>
<input type='text' name='username' id='username' value='<?php echo $fgmembersite->SafeDisplay('username') ?>' maxlength="50" /><br/>
<span id='login_username_errorloc' class='error'></span>
</div>

现在我在网站上检查了它,在那里你使用 print_r($_SESSION); 进行了重定向,我得到了这个结果:

[user_level] => mysqli_result Object ( [current_field] => [field_count] => [lengths] => [num_rows] => [type] => )

谁能给我解释一下那里发生了什么?或者出了什么问题?

最佳答案

这可能无法解决您的问题,但应始终在脚本的最顶部启动 session 。

<?php
if (!isset($_SESSION)) {
session_start();
}

// ... Other code ...

您的查询也有问题。你应该像这样使用它:

$conn = new mysqli('host', 'username', 'password', 'database');
$stmt = $conn->prepare("SELECT * FROM table WHERE id = ?");
$stmt->bind_param("s", $editID);
$stmt->execute();
$result = $stmt->get_result();
$row = $result->fetch_assoc();

print_r($row);

关于php - 在 Session 中存储变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40484647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com