Я пытаюсь создать простую форму входа. У меня есть session_start(); как первое, что загружается на страницу. У меня есть файл login.php, который содержит код входа в систему, который обрабатывается с помощью вызова ajax при нажатии кнопки входа. Это содержит:
if ($_GET['cemail']) {
$email = $_GET['cemail'];
$password = md5($_GET['cpassword']);
$sql = "select * from users where email='" . $email . "' and password='" . $password . "'";
$result = mysql_query($sql);
if (mysql_num_rows($result) >= 1) {
session_register("email");
}
else {
echo "<span style='color:#ffffff;'>Invalid Email/Password</span><br>";
}
}
Когда я нажимаю кнопку «Войти», я получаю это предупреждение:
Предупреждение: session_register() [function.session-register]: невозможно отправить ограничитель кеша сеанса - заголовки уже отправлены (вывод начался в /home/clicker/public_html/hstrial-RBochner/login.php:1) в /home/clicker/public_html /hstrial-RBochner/login.php в строке 82
Строка 82 — это строка, в которой написано session_register("email");
Я также пытался создать кнопку выхода из системы, которая просто вызывает session_destroy(), но это дает мне следующее:
Предупреждение: session_destroy() [function.session-destroy]: попытка уничтожить неинициализированный сеанс в /home/clicker/public_html/hstrial-RBochner/login.php в строке 66.
Что я здесь делаю неправильно? Я пробовал размещать session_start() в разных местах. Любая помощь/идеи? Спасибо.
session_registerустарел и планируется удалить из языка. Вы вообще не должны его использовать... если вы нашли это в каком-то туториале, вероятно, это было десятилетней давности. - person Dan Grossman   schedule 06.08.2011session_startсодержит десятки ответов. - person meagar   schedule 06.08.2011