В связи с переходом на новый движок... возможны сбои в работе! Простите!
Работы производятся прямо сейчас 19-03-2024! 🞨
Меню :
cookie (7)
php (329)



Blog (1392)
php (329)
js (244)
html (147)
css (131)
html tags (62)
js tag (56)
jquery (42)
text (37)
js method (36)
php array (33)
js date (33)
form html (30)
online (29)
Показать еще :
fonts (26)
ruweb.net (25)
foto (22)
php file (20)
atom (20)
forum (19)
hosting (18)
svg (18)
input (18)
php date (17)
board (16)
php time (16)
html book (16)
color (15)
info (15)
img (14)
js time (14)
js url (14)
js events (14)
htaccess (13)
select (13)
notepad (13)
osclass (13)
keyboard (12)
знак (12)
dw block (12)
php img (12)
php path (12)
table (12)
download (12)
icon (11)
form (11)
jsphp (11)
alphabet (10)
keyframes (10)
js delete (10)
yandex (10)
mouse (10)
chart (9)
hover (9)
dosite (8)
browser (8)
php post (7)
comment (7)
php url (7)
iframe (6)
php get (6)
mysql (6)
click (6)
list (6)
canvas (6)
adminka (6)
vs code (6)
js id (5)
mb (5)
heading (5)
value (5)
reg.ru (5)
ftp (5)
year (5)
js math (5)
tag a (5)
bbcode (4)
php var (4)
base64 (4)
xml (4)
scandir (4)
games (4)
flags (4)
symbols (4)
week (4)
day (4)
ssl (4)
нок (4)
submit (4)
task (4)
vk (4)
month (4)
pages (4)
console (4)
js form (4)
domen (3)
line (3)
https (3)
js post (3)
jquery post (3)
money (3)
numbers (3)
js img (3)
padding (3)
куб (3)
captcha (3)
ucoz (3)
js hash (3)
tag hr (2)
details (2)
typeof (2)
seo (2)
prompt (2)
sitemap (2)
рся (2)
youtube (2)
height (2)
arrows (2)
js vars (2)
counter (2)
google (2)
qr kod (2)
video (2)
speed (1)
smile (1)
нод (1)
rutube (1)
scroll (1)
windows (1)
archive (1)
jino (1)
cursor (1)

Как передавать сессии на поддомен с примерами скрипт

Как передать сессию на поддомен, есть ли способ передачи сессий на поддомен!? На сайте не предается сессия на поддомен! Способы передавать сессию на поддомены.

Навигация по странице :
  1. Не передается сессия на поддомен! + Алгоритм передачи
  2. Скрипт передачи сессии на поддомен
  3. Код скрипта для передачи сессии на поддомен
  4. Скрипт запуска сессии на поддомене
  5. Пример передачи и запуска сессии на поддомене
  6. Скачать

  1. Не передается сессия на поддомен!

    Начнем с того, что сессия на поддомен никакими способами, которые я прочитал в интернете не сработали! В этом нужно разбираться отдельно!

    И после некоторого раздумья я подумал!

    А почему бы не попробовать передать сессию на поддомен с помощью cookie - раз уж другие способы не сработали! Сказано сделано!

    Алгоритм передачи сессии на поддомен

    Алгоритм передачи сессии на поддомен совершенно простой!

    В момент отправки данных, например в момент авторизация вы должны создать отдельную куку, которая и будет в случае необходимости запускать сессию.

    На поддомене должен находиться скрипт, который проверит существование куки для запуска сессии и запустить сессию на поддомене!

    И! НО! Здесь надо уточнить, что данный скрипт подразумевает, что все манипуляции происходят на главном домене! И данные на поддомен никаким образом не пердаются!(Можно сделать и по другому, но сегодня мы рассматриваем скрипт самый простой, какой-только можно придумать! А извращаться можно до бесконечности! wall смайлы)


  2. Скрипт передачи сессии на поддомен

    Поскольку! Мы изначально взяли за константу, что никаким образом данные на поддомен не передаются, то значение кук будет постоянным(для данного примера должно быть постоянным)! Длаее мы это покажем, но в первых строках я должен был сказать об этом! Это будет Test

    Нам понадобится какая-то форма(вообще о формах много тем), из которой будем отправлять наши данные, вернее для примера мы будем использовать checkbox(если вам требуется создавать куки скрыто):

    <input type="checkbox" name="checkbox"> запомнить меня - кнопка checkbox<br>

    Следующим пунктом нам потребуется способ получения данных из этой кнопки -> см.здесь, естественно, что мы выбираем post -> соберем всю форму вместе:

    <form method="post" action="">
    <input type="checkbox" name="checkbox"> запомнить меня - кнопка checkbox<br>
    <input type="submit" name="submit" value="submit"><br>
    </form>

    Перейдем к скрипту, который будет обрабатывать создание кук для сессии на поддомене, в данном примере у нас переменная $password заранее определена :

    $password = 'my_password';

    Но вам нужно, чтобы эти данные были динамическими, поэтому вам придется данную форму и получение данных немного модернизировать самостоятельно! Про форму мы уже говорили выше - из такой формы, либо подобной мы должны получить данные таким образом(про безопасность тоже не забываем -> strip_tags):

    if( $_POST[ 'password'] ) { $password = strip_tags($_POST[ 'password']); }

    Далее идут проверки! Если кнопка checkbox была нажата выводим результат - кнопка checkbox нажата - ПРИВЕТ МИР!:

    if($_POST[ 'checkbox'])

    Далее- если куки не существуют:

    if (!$_COOKIE['Test'])

    Если мы прошлом проверки, то мы внутри скрипта и создаем куки и отправляем результат в переменную $example(если вы знаете, то там будет либо TRUE, либо FALSE):

    $is_Cookie = @SetCookie ( 'Test' , $password, time()+(365*24*60*60), "/", $_SERVER["HTTP_HOST"], 0);

    И в зависимости от результат в переменной $is_Cookie выводим текстовое сообщение либо куки созданы, либо нет... соберем выше рассказанный скрипт:

    <?
    $password = 'my_password';
    if($_POST[ 'checkbox'])
    {
       $send .= 'кнопка checkbox нажата - ПРИВЕТ МИР! ';
       if (!$_COOKIE['Test'])
       {
           $is_Cookie = @SetCookie ( 'Test' , $password, time()+(365*24*60*60), "/", $_SERVER["HTTP_HOST"], 0);

           if (!$is_Cookie)
           {
           $send .= "<br>Куки Test не созданы - ошибка";
           }
           else
           {
           $send .= "<br>Куки Test благополучно созданы";
           }
       }
       else
       {
       $send .= "<br>Куки Test уже существуют";
       }
    }
    ?>

    Теперь мы должны как-то вывести результат работы скрипта, перед формой ставим :

    <?
      echo $send;
      if($_COOKIE['Test']){ echo '<br>чему равны куки из Test = '. $_COOKIE['Test']; }
    ?>

  3. Код скрипта для передачи сессии на поддомен

    Далее нам остается собрать весь код передачи сессии на поддомен в виде скрипта прямо здесь:

    <?

    $password = 'my_password';

    if($_POST[ 'checkbox'])

    {

       $send .= 'кнопка checkbox нажата - ПРИВЕТ МИР! ';

       if (!$_COOKIE['Test'])

       {

           $is_Cookie = @SetCookie ( 'Test' , $password, time()+(365*24*60*60), "/", $_SERVER["HTTP_HOST"], 0);

           if (!$is_Cookie)

           {

           $send .= "<br>Куки Test не созданы - ошибка";

           }

           else

           {

           $send .= "<br>Куки Test благополучно созданы";

           }

       }

       else

       {

       $send .= "<br>Куки Test уже существуют";

       }

    }

    ?>

    <?

      echo $send;
      if($_COOKIE['Test']){ echo '<br>чему равны куки из Test = '. $_COOKIE['Test']; }

    ?>

    <form method="post" action="">

      <input type="checkbox" name="checkbox"> запомнить меня - кнопка checkbox<br>

      <input type="submit" name="submit" value="submit"><br>

    </form>


  4. Скрипт запуска сессии на поддомене

    На поддомене проверяем... если куки существуют:

    if($_COOKIE['Test'])

    Создаем условие - если сессии на поддомене не существует:

    if(!$_SESSION['Test'])

    Запускаем сессию на поддомене:

    $_SESSION['Test'] = $_COOKIE['Test'];

    Скрипт запуска сессии в сборе:

    if($_COOKIE['Test'])
    {
      if(!$_SESSION['Test'])
      {
         $_SESSION['Test'] = $_COOKIE['Test'];
      }
    }

    Данный скрипт - это совсем упрощенная версия, показать принцип работы! Если требуется на поддомене запускать несколько сессий, либо производить какие-то проверки, то в первом скрипте в куки сохраняем больше информации, например через разделитель, пусть это будет нижнее подчеркивание(например). А на поддомене значение кук разделяем с помощью explode. Не забываем про шифрование!


  5. Пример передачи и запуска сессии на поддомене

    Для того, чтобы увидеть в живую пример работы скрипта передачи сессии на поддомен нам нужно:

    Открываем поддомен, на который будем передавать сессию:

    Специально зайдите на эту страницу, чтобы увидеть - какая страница - без запуска сессии....

    Вы должны увидеть вот такую картину:

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

    На второй странице пример разместим выше приведенный код запуска сессии на поддомене:

    Нажимаем по кнопке создать куки.

    И далее открываем ту страницу поддомена, которую вы видели в подпункте 2... и вы должны увидеть результат....

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

    Проверено на 3 браузерах - всё работает.

    Если вдруг, по каким то причинам не сработало, значит проблема на вашей стороне.

    Может не сработать...

    Либо в вашем браузере не передались куки.

    Либо ... я не знаю почему

Не стесняемся говорить спасибо!
Помочь проекту DwWeb.ru

Поделиться ссылкой! C друзьями или врагами!

Этим вы очень поможете проекту! Заранее огромное спасибо!

Ещё : dwweb.ru есть здесь:
ruweb
Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2024 Контакты. Реклама на сайте Лучший хостинг : RUWEB + помощь по RUWEB
Страница загружена за : 0.020217 секунд. Подробнее