【发布时间】:2016-12-31 02:07:57
【问题描述】:
我有一个 homepage.php 和 messages.php 页面,用于两个常见的“menu.php”,所以我已经在 homepage.php 和 messages.php 中启动了一个会话并且我没有在菜单页面中启动任何会话. 我正在尝试获取这些值,这是我的菜单代码:
HTML 代码:
<a href="#" class="dropdown-toggle dropdown-at" data-toggle="dropdown">
<span class=" name-caret">
<?= $_SESSION['name'] ?><i class="caret"></i>
</span>
<img src="../images/user/<?= $_SESSION['image'] ?>" style="width:100px; height: 61px;">
</a>
主页.PHP
<?php
ob_start();
session_start();
if (!isset($_SESSION['id'])) {
header('location:index.php');
}
include_once('includes/config.php');
include_once('includes/header.php');
include_once('includes/menu.php');
?>
所以我可以在主页和消息页面的菜单上显示名称和图像的登录用户数据。
【问题讨论】:
-
您需要在使用会话变量的每个页面上进行 session_start()。
-
在菜单页面中也开始会话
-
删除
ob_start(); -
@Dagon 在所有页面中..?
-
使用会话有一定的规则。无需启动会话两次。在包含的页面中。在页面开始时仅使用一次 session_start(),删除文件中包含的其他 session_start()。这可能会引发警告。