【问题标题】:Php cookie isn't setting after a form action redirect表单操作重定向后未设置 PHP cookie
【发布时间】:2015-12-07 16:22:05
【问题描述】:

我正在努力记住我。我遇到的问题是在表单操作重定向后未设置 cookie。

我知道这不是存储密码的最安全方式,但它确实很重要,因为这只是一个没有重要信息的简单页面。


if(isset($_POST['signin']))
{
        setcookie("cid",$id,time()+60*60);
        setcookie("cpass",$pass,time()+60*60);
        }
?>


<body>
<form action="login.php" method="post">
<hr/>
<table align="center"> 
<tr>
    <td colspan="2" align="center"><?php echo @$err;?></td>
</tr>

<tr>
    <th>Your email</th>
    <td><input type="text" name="username" placeholder="username"  value="<?php echo @$_COOKIE['cid'];?>" required/></td>
</tr>
<tr>
    <th>Your password</th>
    <td><input type="password" placeholder="password" name="password" value="<?php echo @$_COOKIE['cpass'];?>" required/>
</td>
</tr>
<tr>
    <th>Stay Signed In</th>
    <td><input type="checkbox" name="ch"/></td>
</tr>
<tr>
<td colspan="2" align="center">
    <input type="submit" name="signin" value="SignIn"/></td>
</tr>
</table>    
</form>
</body>

【问题讨论】:

  • 您的 html 已损坏。 &lt;/body&gt; 终止文档,关闭body后不能再有html了。
  • @ 符号在测试期间没有帮助。它们是错误抑制器。打开php.net/manual/en/function.error-reporting.php 的错误报告并查看您的 HTML 源代码。
  • 谢谢大家!那是个错误。我的代码中已经有了这些更正。我只是在这里粘贴和编辑错误!对不起。再次感谢!

标签: php html setcookie


【解决方案1】:

添加这行,

if(isset($_POST['signin'])) 
{
    setcookie("cid",$id,time()+60*60);
    setcookie("cpass",$pass,time()+60*60);
    }
?>

login.php

由于您对表单的操作是login.php


</table>    
</form>

这也是错误的,应该是

</form>
</table>    

【讨论】:

  • 是的!只是在等待计时器允许我!再次感谢!
  • 很高兴能帮到你:)
猜你喜欢
  • 1970-01-01
  • 2017-01-28
  • 1970-01-01
  • 1970-01-01
  • 2010-10-11
  • 2012-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多