Правильно.. Так что у меня есть этот маленький прогмм с моим кодом. Я получаю все знакомые "Неопределенный индекс" на флажке, который не отмечен. То, что я хочу достичь, выглядит следующим образом: Если выбрано - используйте файлы 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');
}
html-формы НЕ отправляют значения для снятых флажков.
Где у вас есть:
$remember_me = $_POST['remember_me'];
Вы получите необработанную индексную ошибку. Check_me не установлен.
Изменить на
$remember_me = isset($_POST['remember_me'])?$_POST['remember_me']:'';
Это устанавливает переменную в пустую строку, если флажок не установлен, что позволяет остальной части вашего кода функционировать.
В стороне, сеансы используют файлы cookie для работы
Ваша установка переменной $ remember_me в инструкции else if
Изменить это
$remember_me = ""
К этому
$remember_me == ""
$remember_me
?