我集成了一个php登录系统,并在用户注册表单中创建了一些自定义字段,可以很好地填充数据库。但我似乎无法从数据库返回自定义字段值 - 只有像用户名一样构建的字段。我创建了一个名为displayname的字段,并希望在页面上显示该字段。我知道答案可能取决于代码,但一般来说,只要会话处于活动状态并且与数据库的连接工作并返回内置字段数据,我就不应该返回任何值吗?
这是每个页面上的php代码(适用于本机用户名)
<?php
session_start();
if ( !isset($_SESSION['login']) || $_SESSION['login'] !== true) {
if(empty($_SESSION['access_token']) || empty($_SESSION['access_token']['oauth_token']) ||
empty($_SESSION['access_token']['oauth_token_secret'])){
if ( !isset($_SESSION['token'])) {
if ( !isset($_SESSION['fb_access_token'])) { ...etc.
然后我试图用以下方式调用我的自定义字段“bio”:
<?php echo "hi ".$_SESSION['username']; ?>
<?php echo "Your Bio ".$_SESSION['bio']; ?>
为什么用户名会返回值而不是我的自定义生物字段?同样,我知道这可能取决于我使用的脚本,但理论上,这不应该工作吗?或者他们对于为什么它不返回自定义字段值可能会有一些一般的想法?
答案 0 :(得分:0)
会话不包含每个字段值。假设您从数据库中检索bio并将其存储在$ bio中。您还必须使用$_SESSION['bio'] = $bio;
在会话中存储bio。只有这样您才能在任何地方使用它,直到您的会话被销毁。