|
|
|
| Здравствуйте, форумчане:) Использую примерно такой код (находится, положим, на test.net):
<?
$cipher = $userlog.'||'.$userpass;
setcookie("ads",$cipher,time()+30,"/","host.org");
header("Location: http://host.org/");
?>
|
проверяю - не передает $cipher.
Лезу в куки браузера для домена host.org - там пустая кука "ads".
В чем же дело? пробовал string domain ".host.org", ".org" - результат тот же, т.е. никакой.
З.Ы.: Можно ли как-то создавать сессию, действительную для двух сайтов на одном сервере (test.net и host.org например), если PHPSID передается только через cookies? | |
|
|
|
|
|
|
|
для: amigo62
(23.06.2008 в 14:38)
| | test.net и host.org - вообще-то разные домены!
host.org и test.host.net - вот это прокатит
Вот из мануала:
domain
The domain that the cookie is available. To make the cookie available on all subdomains of example.com
then you'd set it to '.example.com'. The . is not required but makes it compatible with more browsers.
Setting it to www.example.com will make the cookie only available in the www subdomain. Refer to tail
matching in the » spec for details.
|
| |
|
|
|
|
|
|
|
для: mihdan
(23.06.2008 в 14:54)
| | >test.net и host.org - вообще-то разные домены!
я заметил;)
>
>host.org и test.host.net - вот это прокатит
домены, к сожалению, не я выбирал:( мне поставлена задача, чтобы прокатило именно с существующими...
сейчас попробую через www направлять... Нужно лишь, чтобы кука, вставленная на 1 домене, работала на 2, а на 1 - совсем не обязательно.
не работает! Почему кука "ads" host.org пустая создается, не могу понять:( | |
|
|
|
|
|
|
|
для: amigo62
(23.06.2008 в 14:58)
| | >time()+30
действия этой куки всего 30 секунд | |
|
|
|
|
|
|
|
для: SiM(R)
(23.06.2008 в 16:40)
| | Да, так задумано. Увеличивал и до 300, это ничего не дает. Кстати, теперь кука вообще не ставится:( | |
|
|
|
|
|
|
|
для: amigo62
(23.06.2008 в 14:38)
| | Для разных доменов куки будут разные, даже если их имена - одинаковые.
Так как домены разные, читать куки для другого домена не получится. | |
|
|
|
|
|
|
|
для: AcidTrash
(23.06.2008 в 22:19)
| | Напрямую - не получится.
А если через сокеты обращаться к файлу, читающему куки в родном домене? | |
|
|
|
|
|
|
|
для: denvor
(14.01.2009 в 18:49)
| | >Напрямую - не получится.
>А если через сокеты обращаться к файлу, читающему куки в родном домене?
И кто в этом случае будет выступать клиентом? :) | |
|
|
|
|
|
|
|
для: Trianon
(14.01.2009 в 18:59)
| | Хороший вопрос. Ответ напрашивался мучительно долго :) - конец рабочего дня
Так что же делать? | |
|
|
|
|
|
|
|
для: amigo62
(23.06.2008 в 14:38)
| | Можно устанавливать куки через скрытый iframe. Например
<b>Ссылка на этот файл: http://host.org/index.php</b>
<iframe src="http://test.net/setcookie.php" width="0" height="0"></iframe>
Код setcookie.php:
<?
session_start();
if ( !empty($_SESSION['is_user_logined']) ) {
setcookie("PHPSESSID", session_id());
}
| Соответственно оба сайта должны работать на одних и тех же скриптах. | |
|
|
|
|
|
|
|
для: amigo62
(23.06.2008 в 14:38)
| | У вас ошибка
<?
setcookie("ads",$cipher,time()+30,"/","host.org");
| Точку в адресе домена забыли:
<?
setcookie("ads",$cipher,time()+30,"/",".host.org");
|
| |
|
|
|