如何在html/php站点中记住用户帐户中的复选框首选项

如何在html/php站点中记住用户帐户中的复选框首选项,php,html,checkbox,phpmyadmin,Php,Html,Checkbox,Phpmyadmin,你好 我正在做一个网站。有一个复选框用于更新我在phpmyadmin中选择的选项 但如果我按submit,然后按f5/reload page,我选择的首选项将在客户端/html端消失(查看图像以更好地理解) 所以基本上我想让网站记住我在“用户帐户”中的选择 我试过了 <form action="pr.php" method="POST"> <h3 style="color:red;">Numbers?</h3> <input type="c

你好

我正在做一个网站。有一个复选框用于更新我在phpmyadmin中选择的选项

但如果我按submit,然后按f5/reload page,我选择的首选项将在客户端/html端消失(查看图像以更好地理解)

所以基本上我想让网站记住我在“用户帐户”中的选择 我试过了

  <form action="pr.php" method="POST">
  <h3 style="color:red;">Numbers?</h3>
  <input type="checkbox" name="a1" value="1" <?php if(isset($_POST['a1'])) echo "checked='checked'"; ?>  /><label>One</label><br/>
  <input type="checkbox" name="a2" value="2" <?php if(isset($_POST['a2'])) echo "checked='checked'"; ?>  /><label>Two</label><br/>
  <input type="checkbox" name="a3" value="3" <?php if(isset($_POST['a3'])) echo "checked='checked'"; ?> /><label>3</label><br/>
  <input type="checkbox" name="a4" value="4" <?php if(!is_null($_POST['a4'])) echo "checked='checked'"; ?> /><label>Four</label><br/>

  <input type="submit" value="submit" name="submit">

数字?

除非将信息保存到数据库中,否则即使单击了提交,在刷新网页后,也会丢失变量的值

您可以使用cookies保存选中的选项的值:

setcookie("checkbox1","checked");
第一个参数是cookie的
名称
,第二个参数是cookie的
,您可以添加第三个参数,其中包含您希望cookie在过期之前拥有的
时间

在您的if条件下,您可以这样做:

<?php if($_COOKIE['a1'] == "checked") echo "checked='checked'"; >

但如果我按f5/重新加载页面
=>则表示未提交数据。这就是数据丢失的原因。如果按“提交”按钮,并且您的操作是当前页面,则您将使用给定的代码确保返回数据。当您按f5时,如果该页面中有可用的$\u POST数据,您将收到“确认”对话框窗口,在该窗口中,单击“重新发送”按钮$\u POST值将保持在同一页面上,否则将重置。。。如果您未获得该对话框,则您的站点中没有$\u POST值。。当你想在提交表单后重定向你的站点时会发生这种情况抱歉,修复了,首先我按submit,然后按f5,值不会保存在客户端@AlivetoDie