1

我是会话的新手,并且认为我了解了它们的基础知识,它们似乎就像容器一样,其中包含您可以在稍后阶段使用的信息并链接到您的 UID。

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

非常感谢提前!

编辑:

这是在 wordpress 上,很抱歉添加这个,每个页面都有一个“事件 ID”我希望这个被存储以供以后使用(在一种结帐页面上)抱歉没有添加这个!

4

2 回答 2

3

在 $_SESSION 中保存页面 ID

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。

于 2012-06-20T15:56:11.693 回答
1

在 wordpress 中,您不能传递自定义 url 参数。所以你不能发送类似 http://yourwordpresswebsite.com/?custom_param='value '

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 的新手。

于 2012-06-20T17:53:22.320 回答