2012-03-02 65 views
1

我想弄清楚如何添加记住我功能到我的脚本与代码点火器。这就是我“米试图与该复选框做的。我得到一个语法错误的,如果statment我这不是正确地使用它吗?记住我cookie代码点火器

<?php echo form_label(form_checkbox('remember', 1, if (isset($this->input->cookie('xtrcook'))) { TRUE }) . ' Auto-login in future.', 'remember'); ?> 

回答

0

你有一个语法错误,因为你想通过这个作为参数:

if (isset($this->input->cookie('xtrcook'))) { TRUE } 

这不是表达式在PHP中的工作方式。你想这是TRUExtrcook Cookie设置,所以只是通过在此:

isset($this->input->cookie('xtrcook')) 

其实,$this->input->cookie()回报或者cookie值或FALSE,无一不是始终“设置”,所以isset()是不恰当的在这里,你可以使用! empty()!== FALSE代替:

$this->input->cookie('xtrcook') !== FALSE // evals to TRUE if the cookie exists 

整个事情:

<?php echo form_label(form_checkbox('remember', 1, $this->input->cookie('xtrcook') !== FALSE).' Auto-login in future.', 'remember'); ?> 

有点复杂的是,可能会更容易转嫁form_label()功能,只是这样写:

<label> 
    <?php echo form_checkbox('remember', 1, $this->input->cookie('xtrcook') !== FALSE); ?> 
    Auto-login in future 
</label> 
+0

否Cookie是唯一要记住以防万一用户希望系统记住用户名当他们注销并返回到登录页面 – 2012-03-02 04:50:50

+0

好吧,这更像是一个“旁边”,你是如何与其余的人交往的? – 2012-03-02 05:10:46

+0

这里有一个语法错误,它说<?php echo form_label(form_checkbox('remember',1,$ this-> input-> cookie('xtrcook')!== FALSE))。'将来自动登录。','记住'); ?> – 2012-03-02 16:35:15

0

我不这样认为,这看起来像一个视图,PHP是一种服务器端语言,这意味着一旦它呈现页面,就完成了 - 它不会响应复选框上的任何点击......您可以进行AJAX调用来维护您的结构,但我建议检查你提交表单的页面上你还记得变量,然后如果需要设置cookie