Php 为复选框设置cookie

Php 为复选框设置cookie,php,javascript,cookies,forms,Php,Javascript,Cookies,Forms,这是我试图在表单中为支票盒设置cookies的函数 function setCookie(c_name,value,exdays){ var exdate=new Date(); exdate.setDate(exdate.getDate() + exdays); var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString()); do

这是我试图在表单中为支票盒设置cookies的函数

function setCookie(c_name,value,exdays){    
    var exdate=new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value=escape(value) + ((exdays==null) ?
        "" : "; expires="+exdate.toUTCString());
    document.cookie=c_name + "=" + c_value;
}

function set_check(){
    var proceed = document.forms['form1']['proceed_opt[]'].checked;
    setCookie(proceed_opt[], proceed, 60*60*1);
    alert(proceed_opt[]);
}
我表格中的复选框如下

        <input type="checkbox" name="proceed_opt[]" value="I will upload new Image" onChange="set_check()";>
          Insert Option &quot;I will upload new Image&quot;
    </td>
</tr>
<tr>
    <td></td>
    <td colspan="2">
            &nbsp; 
          <input type="checkbox" name="proceed_opt[]" value="I approve this sample for a Night Light" onChange="set_check()";>
          Insert Option &quot;<font face="Arial, Helvetica, sans-serif" size="2">I approve this sample for a Night Light</font>&quot; 
    </td>
</tr>
<tr>
    <td></td>
    <td colspan="2">
            &nbsp; 
          <input type="checkbox" name="proceed_opt[]" value="Select One" onChange="set_check()";>
          Insert Option &quot;<font face="Arial, Helvetica, sans-serif" size="2">Select One</font>&quot; 
    </td>
</tr>     
<tr>
    <td></td>
    <td colspan='2'>
         &nbsp;
        <input type="checkbox" name="proceed_opt[]" value="other" onChange="set_check()">
          Insert Option &quot;Other See comments&quot;
    </td>
</tr>

插入选项“我将上载新图像”
插入选项“我批准此样品用于夜间照明”
插入选项“选择一个”
插入选项“其他请参见注释”

但是Cookie没有在这里设置…谁能告诉我如何在表单中为复选框设置Cookie…

看看这是否会引导您走向正确的方向。这将使用复选框的值设置名为“继续_opt”的cookie

HTML:


看看这是否能把你引向正确的方向。这将使用复选框的值设置名为“继续_opt”的cookie

HTML:


您的代码存在一些问题。我稍微整理了一下,做了一些假设。基本上,你把事情复杂化了

您错误地引用了字段,出现了错误。这种方法更简单(虽然仍然不是理想的方法,但它可以工作)

小提琴:

HTML:


您的代码存在一些问题。我稍微整理了一下,做了一些假设。基本上,你把事情复杂化了

您错误地引用了字段,出现了错误。这种方法更简单(虽然仍然不是理想的方法,但它可以工作)

小提琴:

HTML:


@abc123查看上面的修订帖子。警告框正在工作,dude…但是当我刷新页面时cookie没有设置选中的复选框不在那里…怎么办???@abc123查看上面的修订帖子。警告框正在工作,dude…但是当我刷新页面时cookie没有设置选中的复选框不在那里…怎么办?我有测试并验证这是设置cookie。请解释为什么这不能解决你的问题,因为如果这不是你需要的,然后我认为我理解得不够好,无法帮助你。不,老兄…我也测试了这个…在我选中一个复选框并在页面上重新加载选中的复选框后,该复选框应该在页面上,但现在它不是这样做的。我想你混淆了cookie的功能。cookie只是存储数据,在本例中就是这样做的。然后,如果要使用该数据预先选择字段,还需要编写代码。它不会自动保存复选框的状态。是的,你完全正确…刚才观察到cookie已设置…但是一旦页面重新加载,我如何将cookie值放入表单中…正如你所说的一些事情,例如预选字段…你能告诉我如何为该功能编写代码吗…对不起,我现在需要睡觉了,但我明天会给你买点东西。首先将cookie拆分为名称/值对
var cookies=document.cookie.split(/;/)
然后使用这些值与每个复选框进行比较。我已经测试并验证了这是设置cookie。请解释为什么这不能解决你的问题,因为如果这不是你需要的,然后我认为我理解得不够好,无法帮助你。不,老兄…我也测试了这个…在我选中一个复选框并在页面上重新加载选中的复选框后,该复选框应该在页面上,但现在它不是这样做的。我想你混淆了cookie的功能。cookie只是存储数据,在本例中就是这样做的。然后,如果要使用该数据预先选择字段,还需要编写代码。它不会自动保存复选框的状态。是的,你完全正确…刚才观察到cookie已设置…但是一旦页面重新加载,我如何将cookie值放入表单中…正如你所说的一些事情,例如预选字段…你能告诉我如何为该功能编写代码吗…对不起,我现在需要睡觉了,但我明天会给你买点东西。首先将cookie拆分为名称/值对
var cookies=document.cookie.split(/;/)
然后使用这些值与每个复选框进行比较。
<form name="form1"><table><tr><td></td><td>&nbsp; <input type="checkbox" name="proceed_opt[]" value="I will upload new Image" onclick="if(this.checked){set_check(this);}">
      Insert Option &quot;I will upload new Image&quot;</td></tr>
<tr><td></td><td colspan="2">
        &nbsp; 
      <input type="checkbox" name="proceed_opt[]" value="I approve this sample for a Night Light" onclick="if(this.checked){set_check(this);}">
      Insert Option &quot;<font face="Arial, Helvetica, sans-serif" size="2">I approve this sample for a Night Light</font>&quot; </td></tr><tr><td></td><td colspan="2">
        &nbsp; 
      <input type="checkbox" name="proceed_opt[]" value="Select One" onclick="if(this.checked){set_check(this);}">
      Insert Option &quot;<font face="Arial, Helvetica, sans-serif" size="2">Select One</font>&quot; </td></tr>     
 <tr><td></td><td colspan='2'> &nbsp;
 <input type="checkbox" name="proceed_opt[]" value="other" onclick="if(this.checked){set_check(this);}">
     Insert Option &quot;Other See comments&quot;</td></tr>?</table></form>
function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
}

function set_check(proceed){

var proceed_opt = proceed.value;
setCookie("proceed_opt", proceed_opt, 60*60*1);
alert (proceed_opt);
}
<form name="form1">
<div>
<input type="checkbox" id="check1" name="proceed_opt[]" value="I will upload new Image" onChange="set_check(this)">
        <label for="check1">I will upload new Image</label>
    </div>
<div>
          <input type="checkbox" id="check2" name="proceed_opt[]" value="I approve this sample for a Night Light" onChange="set_check(this)">
    <label for="check2">I approve this sample for a Night Light</label>
    </div>
<div>              
          <input type="checkbox" id="check3" name="proceed_opt[]" value="Select One" onChange="set_check(this)">
    <label for="check3">Select One</label>
    </div>
    <div>
        <input type="checkbox" id="check4" name="proceed_opt[]" value="other" onChange="set_check(this)">
        <label for="check4">Other See comments</label>
    </div>
</form>
function setCookie(c_name,value,exdays){    
    var exdate=new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value=escape(value) + ((exdays==null) ?
        "" : "; expires="+exdate.toUTCString());
    document.cookie=c_name + "=" + c_value;
}

function set_check(me){
    setCookie(me.value, me.checked, 60*60*1);
    console.log(me.value);
    console.log(me.checked);
    console.log(document.cookie)
}