Всех друзей поздравляем с Новым годом! Всего вам самого наилучшего! Всех благ, здоровья а материальное приложится!
СКРИПТЫ althtmlcssphpjsblog

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

Поддержи проект!!!

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

Навигация по странице :
  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. Пример передачи и запуска сессии на поддомене

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

    Откройте страницу поддомена, чтобы проверить, передана ли сессия на поддомен!? Не закрывайте страницу - она нам понадобится! :

    calc.dwweb.ru

    Как вы наверное увидели... наверху никакого выводи никакой информации о запуске сессии! Теперь идем на страницу пример, на которой размещен скрипт передачи сессии на поддомен, о котором мы рассказывали выше. Отмечаем флажок checkbox и нажимаем отправить:

    На отдельной странице

    И далее возвращаемся на страницу поддомена и перезагружаем страницу! Вы должны увидеть такую картину - запуска сессии через куки на поддомене:

    Передать сессию php на поддомен пример


Вас может еще заинтересовать список тем : #PHP | #PHP_FUNCTION | #COOKIE | #PHP_SESSION | #PHP_BOOK |
Последняя дата редактирования : 2020-03-05 08:35
Название скрипта :Передать сессию на поддомен
Скрипт № 43.3Ссылка на скачивение: Все скрипты на одной странице
Теги:
способ передачи сессии на поддоменкак передать сессию на поддоменпередача сессии на поддомен

Последние комментарии :
Александр :
04/06/2020 01:42
Спасибо)
подробнее.
admin :
20/05/2020 10:36
Как бы смешно это не звучало! Но! Запускается новая система комментирования COMMENTS+ 1.5. в тестовом режиме!От…
подробнее.
Паула :
21/05/2020 04:48
Вообще мне очень нравится, что вы делаете! И ваш подход! И ваш стиль!И не обращайте внимание на всяких…
подробнее.
admin :
21/05/2020 05:03
Я Вас помню! Вы частенько оставляли сообщения на сайте!Все никак не мог спросить!? У Вас есть сайт -> зачем это…
подробнее.

НАШИ ПРОЕКТЫ : Проекты находятся в разной степени готовности (просто их столько, что времени не хватает…) Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2020 Мы на лучшем хостинге -> ruweb