如何在没有cookie的情况下回忆上一次会话的数据?

时间:2015-04-25 07:26:40

标签: javascript php cookies

我有一个页面,我输入一个名称并检查一系列复选框。使用PHP将结果保存到服务器端文本文件中。

我使用以下PHP访问与任何特定名称关联的数据:

<?php
$search = $_GET["name"];
$comments = file_get_contents('comments.txt');
$array = explode("~",$comments);

echo "<html>";

foreach($array as $item){
if(strstr($item, $search)){
echo $item;
} }
?>

我想在将来的日期回忆这些数据。当我再次选择一个名称时,相关的复选框会以某种方式改变css样式(提醒我他们在之前的会话中被检查过)。

<nobr><input type="checkbox" name="comment" id="AAA" value="Example text.  " onclick="createOrder()"><label for="AAA" onclick="createOrder()" title=
"Example text.">
 example </label></nobr><br>

我的理论解决方案:在按下按钮或某些此类事件时,PHP将搜索所选名称,搜索与该名称相关联的AAA,并且(如果找到)更改AAA的标签颜色。

我不确定饼干在这里是否合适。上面的简单PHP只是将数据回显到页面。我建议的方法是否可行?

详细说明:
我的目标是输入名称和复选框。该数据存储在包含所有其他名称和复选框数据的文本文件中。也许就是这样:

John Smith AAA FFF RRR
Jill Jones BBB RRR ZZZ

在未来的会话中,当再次输入John Smith时,ID为AAA,FFF和RRR的复选框的标签将更改颜色,以提醒我上次检查了它们。

1 个答案:

答案 0 :(得分:0)

最简单的方法是使用php会话变量来存储临时数据。

在session_start();
   $ _SESSION [$ search] = $ checkboxStates;

会话变量需要初始化,并且可以在多个用户请求中使用。通常会话依赖于cookie,因此当浏览器清除cookie时数据将丢失。

http://php.net/manual/en/function.session-start.php