在$ _SESSION中保存页面ID

时间:2012-06-20 15:52:59

标签: php session

我是会议的新手,并且认为我掌握了它们的基础知识,它们似乎就像容器一样,可以在以后的阶段使用并与您的UID相关联。

我想知道如何在点击按钮时保存页面的ID(例如ID123),以及我在标题中有什么确切的代码。

提前多多赞赏!

编辑:

这是在wordpress上,抱歉添加这个,每个页面都有一个'事件ID'我希望将其存储起来供以后使用(在某种结帐页面)抱歉不添加此内容!

2 个答案:

答案 0 :(得分:3)

  

将页面ID保存在$ _SESSION

session_start();
$_SESSION['pageId'] = (int) $_GET['ID'];

现在,您可以使用$_SESSION['pageId']在需要的地方获取其值。

确保将session_start();放在您使用与会话相关的函数或$_SESSION数组的脚本的顶部。

当你不再需要它时,要取消它,你会这样做:

unset($_SESSION['pageId']);
session_destroy();
session_regenerate_id();

更新

点击按钮,您可以执行以下操作:

var btn = document.getElementById('btnId');
btn.onClick = function() {
  window.location = 'saveSession.php?id=xxx' // replace xxx with your id value
};

现在在saveSession.php中,您必须使用上面显示的代码将其存储在会话中。

您也可以使用Ajax。

答案 1 :(得分:1)

在wordpress中,您无法传递自定义网址参数。所以你不能发送类似的东西 http://yourwordpresswebsite.com/?custom_param= '值'

WOrdpress不允许这样做。如果你想要的只是一个帖子ID或一个页面ID。在wordpress中很容易抓住。做:

$val= $post->ID

多数民众赞成,并设定了$ val。如果我必须将任何自定义参数发送到不同的文件,我的方法是将其作为表单变量发送。可能有更好的方法,但我也是Wordpress和php的新手。所以这就是我的工作:

<?php
echo "<form action='php_file.php' method='post' name='form_name'>
<input type='hidden' name='eventid' value='$event_id' />
<input type='submit' name='submit' value='submit'/>
</form>";

?>

如果您希望这是您的会话信息,您可以将其添加到您正在收集上述字段的php文件中。

session_start();
$_SESSION['pageId'] = (int) $_GET['eventid'];

/*  Do not forget to check if the get variable is clean before you perform any operations, use mysql_real_escape_string(). It is a very important security measure. */

这可能不是最好的方法,因为我告诉过你我也是wordpress的新手。