gpt4 book ai didi

mysql - $_SESSION 没有保存在数据库中

转载 作者:太空宇宙 更新时间:2023-11-03 11:55:22 25 4
gpt4 key购买 nike

好的,我有一个网站,用户必须登录才能提交表格、字符表。该表单将所有信息传递到页面以插入数据库。表单页面和操作页面上的第一件事是

<?php
session_cache_expire(360);
session_start();
?>

在表单上还有一个回显 $_SESSION['logname'] 的地方,因此您可以在页面上看到用户名:

<p>Logged in as:<br />
<?=$_SESSION['logname']?>

这是有效的,它正确地显示了登录的人。现在,在表单操作中设置的页面上,代码是:

$sql="INSERT INTO topdata (log_name,char_name,create_date) 
VALUES (\"$_SESSION[logname]\",\"$_POST[char_name]\",NOW())";

我已经多次检查数据库中的字段,它们是正确的,但是 $_SESSION[logname] 没有保存到数据库中,当通过 phpMyAdmin 查看时,该字段只是空白。所以 $_SESSION[logname] 的信息并没有从在表单上回显到被输入到数据库中。我试过 ['logname'] 和 [logname] 都没有用。

我也试过添加

<input type="hidden" name="log_name" value="<? $_SESSION['logname'] ?>" />
<input type="hidden" name="owner" value="<? $_SESSION['logname'] ?>" />

到表单,以及

<td>Player Name:</td>
<td><? echo $_SESSION['logname'] ?></td>

并将 INSERT 更改为

$sql="INSERT INTO topdata (log_name,char_name,create_date) 
VALUES (\"$_POST[logname]\",\"$_POST[char_name]\",NOW())";

当查看要填写的表格时,Player Name 正在回显正确的 session 信息,但仍未保存...

关于我做错了什么以及如何让 session 登录保存在玩家姓名字段中的任何想法?

我们将不胜感激任何帮助!

最佳答案

我认为您在查询 ' '
中缺少单引号 你的代码是

$sql="INSERT INTO topdata (log_name,char_name,create_date) 
VALUES (\"$_SESSION[logname]\",\"$_POST[char_name]\",NOW())";

我认为你应该在 $_SESSION['logname']$_POST['char_name'] 中使用单引号

$sql="INSERT INTO topdata (log_name,char_name,create_date) 
VALUES (\"$_SESSION['logname']\",\"$_POST['char_name']\",NOW())";

关于mysql - $_SESSION 没有保存在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33250744/

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