[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: setcookie не работает
shurik666
Народ выручайте, не работает удаленuе кук.
Пробовал уже по всякому..
Вот создаю куку
setcookie ("login", "$login", time()+"3600"); 

Удаляем вот так:
setcookie('login', '', time() - 3600 * 24);


Кука создается, но не удаляется..



Спустя 19 минут, 19 секунд (29.04.2010 - 18:19) vasa_c написал(а):
Привидите код, иллюстрирующий проблему.

Спустя 8 минут, 25 секунд (29.04.2010 - 18:28) ZSH написал(а):
а создаеш и удаляеш из одного файла?

Спустя 1 час, 7 минут, 5 секунд (29.04.2010 - 19:35) FatCat написал(а):
Цитата (shurik666 @ 29.04.2010 - 19:00)
Пробовал уже по всякому..

setcookie ("login", "$login", (time()+3600)); 

А так?

Спустя 24 минуты, 22 секунды (29.04.2010 - 19:59) shurik666 написал(а):
FatCat
пробовал.
ZSH
нет. еслu создавать u удалять в одном файле, работает:(
но пытаюсь сделать выход, поэтому нужен другой файл.
Может есть другuе варuанты?

vasa_c
В смысле? Код я показал, а вот ошuбок он не выдает..

Спустя 57 минут, 13 секунд (29.04.2010 - 20:56) ZSH написал(а):
setcookie ('login', '$login', time()+"3600", '/'); 
setcookie('login', '', -1, '/');

Спустя 31 минута, 33 секунды (29.04.2010 - 21:28) shurik666 написал(а):
ZSH
так тож пробовал.

Спустя 12 часов, 58 минут, 48 секунд (30.04.2010 - 10:27) Nikitian написал(а):

setcookie('login', '', time() - 1);
unset($_COOKIE['login']);

Спустя 4 часа, 11 минут, 43 секунды (30.04.2010 - 14:38) vasa_c написал(а):
Цитата
В смысле? Код я показал, а вот ошuбок он не выдает..

Полный код, который можно запустить и увидеть, что да, в этом месте не работает.

Спустя 6 часов, 8 минут, 1 секунда (30.04.2010 - 20:46) shurik666 написал(а):
vasa_c
http://art-alliance.hostei.com/index.php

вот ссылка на сайт. Код: Index.php

<?php
// вся процедура работает на сессиях. Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!!
session_start();
?>
<html
xmlns="http://www.w3.org/1999/xhtml">
<head>
<script
type="text/javascript" src="menu/stmenu.js"></script>
<script
type="text/javascript">
<!--
window.onerror=function(m,u,l)
{
window.status = "Java Script Error: "+m;
return true;
}
//-->
</script>
<link
href="style.css" rel="stylesheet" type="text/css" />
<title>
"Арт-Альянс" - Торговая компания на просторах HeroesWM.</title>
</head>
<body>
<div
id="container">
<div
id="logo"><a href="index.html"><img src="images/logo.jpg" alt="bog 1" border="0" /></a></div>
<div
id="header" align="left">
<?php

include ("menu/menu.php");
?>
</div>
<div
id="content">
<h1>
Главная страница</h1>
<div
id="left">
<div
class="text">

<div
style="position: absolute; left: 0pt; top: -120px;">
<script
type="text/javascript" src="http://counter160.com/visits.php"></script>
<a
href="http://www.000webhost.com/affiliate-program"><img src="http://www.000webhost.com/images/icons/affiliate.gif" alt="best affiliate programs" /></a>
</div></div>
<div
class="photos" id="container"></div>
<div
class="clear">
</div></div>
<div
id="right">
<h2>
Реклама</h2>

<?php


if (empty($_COOKIE[login])){
include("test/avtor.php");
}else{
print("Вы вошлu как $_COOKIE[login]");
print("<a href=\"test/vihod.php\"><b>Выход</b></a>");
}

?>

<img
src="images/b_h141114.gif" /> <span><a href="http://www.heroeswm.ru">HeroesWM</a></span>
<!--LiveInternet counter-->
<script type="text/javascript"><!--
document.write("<a href='http://www.liveinternet.ru/click' "+
"target=_blank><img src='http://counter.yadro.ru/hit?t27.5;r"+
escape(document.referrer)+((typeof(screen)=="undefined")?"":
";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?
screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+
";"+Math.random()+
"' alt='' title='LiveInternet: показано количество просмотров и"+
" посетителей' "+
"border='0' width='120' height='120'><\/a>")
//--></script>
<!--/LiveInternet-->
</
div>
<
div class="clear">
<
/div></div>
<
div id="footer">
© Supported by <a href="http://www.hosting24.com/" target="_blank">Hosting24.com</a> copyright all rights reserve.
<
/div></div>

</
body>
</
html>



vihod.php

<?php /* Created on: 29.04.2010 */ ?>
<html>
<body>
<?php



if (empty($_COOKIE[login])){
header('Location: [URL=http://art-alliance.hostei.com/index.php'<span]http://art-alliance.hostei.com/index.php'</span><span[/URL] class="sh_symbol">);</span>
}else{
setcookie('login', '', -1, '/');
header('Location: [URL=http://art-alliance.hostei.com/index.php'<span]http://art-alliance.hostei.com/index.php'</span><span[/URL] class="sh_symbol">);</span>
}



?>
</body>
</html>



Так как этот код я писал не полностью самостоятельно. Любым поправкам буду рад. Взарание спасибо.

Спустя 1 час, 55 минут, 58 секунд (30.04.2010 - 22:42) Lenarfate написал(а):
Цитата
http://art-alliance.hostei.com/index.php

вот ссылка на сайт

сайт дырявый. прям черная дыра biggrin.gif

Спустя 2 часа, 22 минуты, 45 секунд (1.05.2010 - 01:05) shurik666 написал(а):
Lenarfate
Да ладно (учусь я)).

Спустя 10 часов, 22 минуты, 50 секунд (1.05.2010 - 11:28) vasa_c написал(а):
Где вход и установка куки?

Спустя 5 часов, 21 минута, 30 секунд (1.05.2010 - 16:49) shurik666 написал(а):
vasa_c
сорри забыл.
Файл который создает куки, думаю форму входа писать не стоит?

<?php
// вся процедура работает на сессиях. Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!!
session_start();
?>
<html
xmlns="http://www.w3.org/1999/xhtml">
<head>
<script
type="text/javascript" src="menu/stmenu.js"></script>
<script
type="text/javascript">
<!--
window.onerror=function(m,u,l)
{
window.status = "Java Script Error: "+m;
return true;
}
//-->
</script>
<link
href="style.css" rel="stylesheet" type="text/css" />
<title>
"Арт-Альянс" - Торговая компания на просторах HeroesWM.</title>
</head>
<body>
<div
id="container">
<div
id="logo"><a href="index.html"><img src="images/logo.jpg" alt="bog 1" border="0" /></a></div>
<div
id="header" align="left">
<?php

include ("menu/menu.php");
?>
</div>
<div
id="content">
<h1>
Вход</h1>
<div
id="left">
<div
class="text">

<?php

session_start();// вся процедура работает на сессиях. Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!!
if (isset($_POST['login'])) { $login = $_POST['login']; if ($login == '') { unset($login);} } //заносим введенный пользователем логин в переменную $login, если он пустой, то уничтожаем переменную
if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} }
//заносим введенный пользователем пароль в переменную $password, если он пустой, то уничтожаем переменную
if (empty($login) or empty($password)) //если пользователь не ввел логин или пароль, то выдаем ошибку и останавливаем скрипт
{
exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!");
}
//если логин и пароль введены,то обрабатываем их, чтобы теги и скрипты не работали, мало ли что люди могут ввести
$login = stripslashes($login);
$login = htmlspecialchars($login);
$password = stripslashes($password);
$password = htmlspecialchars($password);
//удаляем лишние пробелы
$login = trim($login);
$password = trim($password);
// подключаемся к базе
include ("bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто измените путь

$result = mysql_query("SELECT * FROM users WHERE login='$login'",$db); //извлекаем из базы все данные о пользователе с введенным логином
$myrow = mysql_fetch_array($result);
if (empty($myrow['password']))
{
//если пользователя с введенным логином не существует
exit ("Извините, введённый вами login или пароль неверный.");
}
else {
//если существует, то сверяем пароли
if ($myrow['password']==$password) {
//если пароли совпадают, то запускаем пользователю сессию! Можете его поздравить, он вошел!
$_SESSION['login']=$myrow['login'];
$_SESSION['id']=$myrow['id'];
setcookie ('login', "$login", time()+"3600", '/');
//эти данные очень часто используются, вот их и будет "носить с собой" вошедший пользователь
echo "Вы успешно вошли на сайт как $_COOKIE[too_login] <a href='index.php'>Главная страница</a>";
}
else {
//если пароли не сошлись

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



?>
<div
style="position: absolute; left: 0pt; top: -120px;">
<script
type="text/javascript" src="http://counter160.com/visits.php"></script>
<a
href="http://www.000webhost.com/affiliate-program"><img src="http://www.000webhost.com/images/icons/affiliate.gif" alt="best affiliate programs" /></a>
</div></div>
<div
class="photos" id="container"></div>
<div
class="clear">
</div></div>
<div
id="right">


<img
src="images/b_h141114.gif" /> <span><a href="http://www.heroeswm.ru">HeroesWM</a></span>

</div>
<div
class="clear">
</div></div>
<div
id="footer">
© Supported by <a href="http://www.hosting24.com/" target="_blank">Hosting24.com</a> copyright all rights reserve.
</div></div>

</body>
</html>



Спустя 28 минут, 25 секунд (1.05.2010 - 17:18) vasa_c написал(а):
Если не используете буферизацию вывода, то это всё работать не должно.
Включите вывод ошибок на экран.

Спустя 21 час, 12 минут, 16 секунд (2.05.2010 - 14:30) TakoY написал(а):
возможно проблема в том что куки были созданы из другова файла который находиться в другой директории, и тока отуда их можно и удалить. все дело в настройках

Спустя 11 минут, 21 секунда (2.05.2010 - 14:41) Nikitian написал(а):
Цитата (TakoY @ 2.05.2010 - 11:30)
возможно проблема в том что куки были созданы из другова файла который находиться в другой директории, и тока отуда их можно и удалить. все дело в настройках

Не только оттуда: смотрите 4 параметр функции setcookei()
Цитата
The path on the server in which the cookie will be available on. If set to '/', the cookie will be available within the entire domain. If set to '/foo/', the cookie will only be available within the /foo/ directory and all sub-directories such as /foo/bar/ of domain. The default value is the current directory that the cookie is being set in.

Спустя 1 день, 7 часов, 26 минут, 38 секунд (3.05.2010 - 22:08) shurik666 написал(а):
vasa_c
Извини, но можно чуть чуть по проще выражаться? С новичком же разговариваешь..

Спустя 11 часов, 30 минут, 31 секунда (4.05.2010 - 09:39) vasa_c написал(а):
"Включить вывод ошибок" сложно для новичка?
Быстрый ответ:

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