0

原来我的 php.ini 文件配置不正确。使用 fatcow(我的主机),您必须更改 .ini 文件以指定保存会话日期的目录并包括 session.save_path=("directory"); 在 session_start(); 之前。

你们完全正确。这是一次很棒的学习经历。

我在会话方面遇到问题。

在我的第一页上,我已经正确声明了会话变量,因为我可以在我声明它们的 php 文件中打印它们。在用户使用我的标题转发到的页面上,我尝试执行以下操作,但没有打印。好像 session_start(); 什么也没做。我试过 Print_R(); 它只打印 Array ( )。这是我在标题中指定的页面中的代码 - 它是一个 .phtml 文件。

//HTML code up here
 <?   
session_start();
echo $_SESSION['dentist_first_name'];
Print_r ($_SESSION);
 ?>
//HTML code down here

我需要在登录页面上做些什么来确保会话继续进行吗?我使用了 session_start(); 在原始页面上。

真的很困惑,我的变量没有被拾起。

4

3 回答 3

2

session_start() 必须在输出任何 HTML 之前调用

 <?   
session_start();
?>
//HTML code up here
<?php
echo $_SESSION['dentist_first_name'];
Print_r ($_SESSION);
 ?>
//HTML code down here
于 2013-02-14T14:50:15.783 回答
0

session_start(); 必须在输出 HTML 之前

如果是这种情况,您提到标题转发用户。标头是否在到达页面中的 $_SESSION 声明之前转发用户?

于 2013-02-14T14:53:17.473 回答
0

如果您在 session_start() 之前进行任何输出,这将不起作用。

甚至 php 打开标记之前的空格也是输出:

 <?   
session_start();
?>

做这个:

<?   
session_start();
?>
于 2013-02-14T14:56:03.663 回答