[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: ошибка в cookie!
nidhtly
при авторизации на несколько секунд вылетает ошибка:
cannot modify header information headers already

причём ошибка в тех линиях где установлены cookie....cookie соответственно не работают....в чём беда??


if ($_POST['save'] == 1) {
setcookie("auto", "yes", time()+9999999);
setcookie("login", $_POST["login"], time()+9999999);
setcookie("password", $_POST["password"], time()+9999999);
setcookie("id", $myrow['id'], time()+9999999);
}?>




Спустя 4 минуты, 51 секунда (12.11.2009 - 01:22) Gabriel написал(а):
nidhtly
куку насколько помниться как и хедеры должны посылаться до вывода чего-либо в браузер

Спустя 5 минут, 36 секунд (12.11.2009 - 01:28) nidhtly написал(а):
это же установка куков...она у меня стоит после проверки авторизации в отдельном обработчике..
это не правильно??
если нет, то куда мне их ставить??

Спустя 2 минуты, 59 секунд (12.11.2009 - 01:31) Gabriel написал(а):
nidhtly
точно никакой HTML не выводиться в браузер?

Спустя 4 минуты, 13 секунд (12.11.2009 - 01:35) nidhtly написал(а):
выводится, но только при ошибке логин-пароль

Спустя 2 минуты, 10 секунд (12.11.2009 - 01:37) nidhtly написал(а):
<?php
session_start();
if (isset($_POST['login'])) { $login = $_POST['login']; if ($login == '') { unset($login);} }
if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} }

/
if (empty($login) or empty($password))
{
exit ('<html>
<head>
<title>Главная страница</title>
<link href="../css/autorization.css" rel="stylesheet" type="text/css">
<script src="../plugin_script/jquery-1.3.2.js" type="text/javascript" charset="utf-8"></script>
<script src="../plugin_script/jquery.corner.src.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
$(function() {
$("#menu").corner("20px");
$("#mainblock").corner("20px");
});
</script>
</head>
<body marginwidth="0" marginheight="0">
<table class="table">
<tr>
<td height="35" class="td"><a href="../index.php" title="Вернуться на главную"><=== Вернуться на главную</a></td>
</tr>
<tr>
<td>
<div id="mainblock">
<div id="menu">
<p class="error1">ОШИБКА!<br>Не указан login, либо пароль!</p>
</div>
</div>
</body>
</html>');
}


$login = stripslashes($login);
$login = htmlspecialchars($login);
$password = stripslashes($password);
$password = htmlspecialchars($password);

$login = trim($login);
$password = trim($password);


include ("../blocks/db.php");

$ip=getenv("HTTP_X_FORWARDED_FOR");
if (empty($ip) || $ip=='unknown') { $ip=getenv("REMOTE_ADDR"); }
mysql_query ("DELETE FROM oshibka WHERE UNIX_TIMESTAMP() - UNIX_TIMESTAMP(date) > 900");//удаляем ip-адреса ошибавшихся при входе пользователей через 15 минут.
$result = mysql_query("SELECT col FROM oshibka WHERE ip='$ip'",$db);
$myrow = mysql_fetch_array($result);

if ($myrow['col'] > 2) {

exit("Вы набрали логин или пароль неверно 3 раз. Подождите 15 минут до следующей попытки.");
}

$password = strrev($password);
$password = $password."We9att";

/


$result = mysql_query("SELECT * FROM users WHERE login='$login' AND password='$password'",$db);
$myrow = mysql_fetch_array($result);
if (empty($myrow['id']))
{
/
$select = mysql_query ("SELECT ip FROM oshibka WHERE ip='$ip'");
$tmp = mysql_fetch_row ($select);

if ($ip == $tmp[0]) {
$result52 = mysql_query("SELECT col FROM oshibka WHERE ip='$ip'",$db);
$myrow52 = mysql_fetch_array($result52);
$col = $myrow52[0] + 1;
mysql_query ("UPDATE oshibka SET col=$col,date=NOW() WHERE ip='$ip'");
}
else {
mysql_query ("INSERT INTO oshibka (ip,date,col) VALUES ('$ip',NOW(),'1')");

}

exit ("Извините, введённый 11вами логин или пароль неверный.");
}
else {

$_SESSION['password']=$myrow['password'];
$_SESSION['login']=$myrow['login'];
$_SESSION['id']=$myrow['id'];
}




echo "<html><head><meta http-equiv='Refresh' content='0; URL=../index.php'></head></html>";//перенаправляем пользователя на главную страничку, там ему и сообщим об удачном входе

?>
<?php if ($_POST['save'] == 1) {
setcookie("auto", "yes", time()+9999999);
setcookie("login", $_POST["login"], time()+9999999);
setcookie("password", $_POST["password"], time()+9999999);
setcookie("id", $myrow['id'], time()+9999999); }?>

Спустя 1 минута, 27 секунд (12.11.2009 - 01:39) nidhtly написал(а):
это обработчик авторизации...
подскажите если что не так..
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.