由于安全原因,register_globals
设置为关闭。 而这很糟糕,因为现在我真的可以使用会话。如果register_globals设置为off,我该如何使用会话?
你们如何解决这个“问题”?
UPDATE
我一直在使用$ _SESSION试过,但它不工作。这就是为什么我认为这与register_globals
被关闭有关。
在我的头文件中,我有以下代码:
session_start();
if (!isset($_SESSION['test'])) {
$_SESSION['test'] = "Foo bar";
现在,在我的头文件中的任何地方,我可以输出$_SESSION['test']
内容。
但是我无法输出相同的内容。 page.php文件。
下面是使用Wordpress一个例子:使用example.php
//Include the header file
<?php get_header(); ?>
Here is some text, and this is my session: <?php echo $_SESSION['test']; ?>
<?php get_footer(); ?>
这将导致在一个空的会话。
这不是一个“问题”,这是一个解决方案。对于一个巨大的现实问题。 – ceejayoz 2010-01-21 19:17:45
确保在使用$ _SESSION数组之前调用session_start(),并确保您的文件按正确顺序包含。 IE浏览器,如果page.php包含header.php,确保页面只在$ require('header.php')行后面使用$ _SESSION。 – meagar 2010-01-21 19:28:32
除非你故意忽略了一些PHP标签,否则你应该在浏览器窗口中看到“get_header()”,并且它实际上从未被执行。 – meagar 2010-01-21 19:30:19