如何在会话中存储变量以将其传输到另一个页面?

时间:2011-09-20 05:37:46

标签: php

我必须向用户提供一封包含链接的电子邮件。点击该链接后,用户将首先被重定向到登录页面,然后再被重定向到该链接以查看评论。我的问题是,当用户点击电子邮件链接时,我不想在URL中显示该ID只有电子邮件ID将显示在URL中,其余的ID应该在会话中 这是表格

session_start();
$usr=getparams("usr");
$hoss_id=getparams("hoss_id");
$redirect_to_comment=getparams("hotpressContainer");
$_SESSION['hoss_id'] = $hoss_id;
$_SESSION['hotpressContainer'] = $redirect_to_comment;
$select="select email from members where mem_id='$usr'";
$email_id=firesql($select,'get');

if(isset($email_id)){
    $email = $email_id->email;

}else{
        $email = "";      
}

<table width="100%" border="0" cellpadding="0" align="center" cellspacing="0" style="border:1px solid #FFFFFF; *width:98%; ">

  <tr>
    <td class="main-text" align="center" >
    <table width="40%" border="0" cellpadding="3" cellspacing="3" align="center" class="body">
              <form action="index.php" method="post" name="loginform" onsubmit="return validate()">
              <tr>
                <td width="41%">&nbsp;</td>
                <td width="59%">&nbsp;</td>
              </tr>
              <tr>
                <td>Email</td>
                <td><input type="text" name="email" size="30" class="iptext" value="'.$email.'"></td>
              </tr>
              <tr>
                <td>Password</td>
                <td><input type="password" name="password" size="30" class="iptext"></td>
              </tr>
              <tr>
                <td></td>
                <td><input name="submit" type="submit" class="submit" value="Continue "></td>
              </tr>
              <tr>
                <td><input type="hidden" name="referer" value="'.$_SESSION['referer'].'">
                   <input type="hidden" name="pg" value="login" />
                     <input type="hidden" name="d" value="done" />

                </td>
                <td><p><a href="index.php?pg=fp">Forgot Password?</a></p>
                  </td>
              </tr>
              <tr>
                <td>&nbsp;</td>
                <td><a href="index.php?pg=register">Join Now</a></td>
              </tr>
        </form>
     </table>
    </td>
  </tr>
</table>

并且在提交表单时,用户将重定向到我的问题用户 当我在会话中注册varibles(在登录页面ABOVE CODE中)时,我想要重定向的页面中没有捕获值?

2 个答案:

答案 0 :(得分:0)

  

如何在会话中存储变量以将其传输到另一个页面?

将它们分配给$ _SESSION数组。

  

我想要重定向的页面中没有捕获值?

你在那个页面上有session_start()吗?

答案 1 :(得分:0)

你只需要在第二页的顶部再次启动会话,在ant html代码之前(如果你有的话)。并将转移的会话存储到要保留的变量。

第一页:

在session_start(); ... $ _SESSION ['hoss_id'] = $ hoss_id;

第二页:

在session_start(); ... $ tempVariable = $ _SESSION ['hoss_id'];