【问题标题】:Cookie to Remember Form SubmissionCookie 记住表单提交
【发布时间】:2012-11-28 22:18:27
【问题描述】:

我有一个表单,提交时会附加当前页面的 URL:domain.com 变为 domain.com?name=value

表单效果很好,但是我需要写一个cookie,这样当用户转到另一个页面时,url会保留已经附加到url的字符串。

domain.com?name=value
domain.com/page?name=value
domain.com/page2?name=value

等等

【问题讨论】:

  • 写一个cookie?!如果您使用的是 PHP,请使用 $_SESSION 在单个会话中的页面之间传递变量。
  • 问题到底是什么?
  • @Bee 谢谢,但你能提供更多细节吗?我的 PHP 知识非常有限。

标签: html forms cookies remember-me


【解决方案1】:

如果在 PHP 页面之间传递变量是你想要的,那么通过会话变量传递它:

在项目的所有页面中,在顶部添加以下行:

<?php
    session_set_cookie_params(0);
    session_start();
?>

然后在一页中给一个会话变量赋值:

$_SESSION['name'] = value;

在同一会话中的另一个页面中检索此变量:

$name = $_SESSION['name'];

在您完成保持会话打开的任何时候,调用

<?php 
    session_start();
    $_SESSION = array();
    session_destroy();
?>

查看this SO post 以了解完全销毁会话的方法。请记住,默认情况下会话保持打开状态,直到浏览器关闭或会话被显式销毁。

如果处理会话不是您想要的,那么您可以在 PHP 中调用脚本时手动传递变量:

<?php 
    $name = $_GET['name'];
    echo "<form action='nextpage.php?name=$name' method='post'> ... </form>";
?>

这样,您的所有表单都通过 GET 将 name 变量发送到下一页。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-30
    • 1970-01-01
    相关资源
    最近更新 更多