1

我想将一些数据存储到会话中,以便我可以在页面之间传输它。我将有很多图像存在,并且需要一种有效的数据存储方式。所以我已经完成了

<a href="create2.php?" ><?php?$_SESSION["choice_1"]=2;?><img src="pictures/laptops/reebok.png" height="150"></td></a>;

但是,当我在另一个页面中调用会话时,它说它是未定义的。我可以这样做,或者当单击图像时,我可以将一些数据存储到变量中,调用函数,将变量保存到会话中,然后加载新页面。但是我不知道我该怎么做。任何帮助将不胜感激谢谢

4

3 回答 3

2

1st,你的 html 坏了,有一个</td>不应该存在的。

关于您的问题,您不必在 URL 中传递值(但不是这样做的),如果您不想使用 cookie,则只需要会话 ID,并使用它来启动会话。你的链接:

<a href="create2.php?<?php echo session_name().'='.session_id(); ?>">
    <img src="pictures/laptops/reebok.png" alt="reebok" height="150">
</a>

在 create2.php 调用session_start()一切之前。当然,如果您使用 cookie,则不需要在 URL 中传递会话 ID。

于 2013-02-24T22:39:30.980 回答
1

session_start()在尝试访问/修改会话变量之前,请确保在每个 PHP 文件的顶部调用。

于 2013-02-24T22:32:09.073 回答
0

首先,你的 php init 标签错误<?php?应该是<?php. 其次,您应该在 php 中初始化会话:

<?php
// nothing before here, session_start must be the very first thing on the page
session_start();

a最后,您不会以这种方式创建任何 php 链接,您只是定义变量,但与标签无关。

要通过 URL 发送存储在 SESSION 全局变量中的“choice_1”,您应该执行以下操作:

<a href="create2.php?choice_1=<?=$_SESSION['choice_1']?>">
  <img src="pictures/laptops/reebok.png" height="150">
</a>;
于 2013-02-24T22:36:06.097 回答