使用复选框确定会话或cookie - php

时间:2014-04-02 20:39:31

标签: php html

对..所以我的代码中有这个小proglem。我得到了一个熟悉的'未定义的索引'在未选中的复选框上。我想要实现的目标如下:如果选中 - 使用cookie,如果没有 - 使用会话。让我发布代码fer ye。

HTML:

<input type="checkbox" id="remember_me" name="remember_me"/>Remember me!

PHP:

if ($login_ok == true)
{
    if ($remember_me == "on")
        setcookie('username', $username, time() + 7200);
    else if ($remember_me = "")
        $_SESSION['username'] = $username;

    header('Location: userprofile.php');
    exit();
 }
 else {
     die ('Wrong userrrname / password');
 }

2 个答案:

答案 0 :(得分:0)

您在else if语句中设置$ remember_me变量

更改此

$remember_me = ""

到此

$remember_me == ""

答案 1 :(得分:0)

html表单不会为未选中的复选框发送值。

你在哪里:

$remember_me = $_POST['remember_me'];

您将获得未分解的索引错误:remember_me复选框未选中。

更改为

$remember_me = isset($_POST['remember_me'])?$_POST['remember_me']:'';

如果取消选中该复选框,则会将变量设置为空字符串,从而允许其余代码运行。

除此之外,会话使用cookie来运行

相关问题