Joomla 1.5 Сессии в joomla 1.5

Тема в разделе "Создание расширений для Joomla", создана пользователем Culibin, 19.07.2010.

  1. Offline

    Culibin Недавно здесь

    Регистрация:
    03.05.2009
    Сообщения:
    13
    Симпатии:
    0
    Пол:
    Мужской
    Сдравствуйте, передомною стала такая задача: В джумловском файле я генерирую псевдослучайное число, присваиваю его переменной, переменную вношу в сессию. В файле, который не пренадлежит джумле, но лежит в той же папке, я должен вывести это число из сессии. Как мне это сделать???? Помогите плз.
    Вот код, который генерирует число, и вносит его в сессию:

    <?php
    $session =& JFactory::getSession();
    $rand = rand(1000, 9999);
    $session->set( 'myvar', $rand );
    ?>
     
  2.  
  3. progmist
    Offline

    progmist Недавно здесь

    Регистрация:
    18.05.2009
    Сообщения:
    155
    Симпатии:
    10
    Пол:
    Мужской
    у класса class JSession extends JObject
    есть метод:
    function &get($name, $default = null, $namespace = 'default')
     
  4. woojin
    Offline

    woojin Местный Команда форума

    Регистрация:
    31.05.2009
    Сообщения:
    3 209
    Симпатии:
    335
    Пол:
    Мужской
    если я всё правильно помню, то должна быть команда OB_SESSION для работы с сессией

    или попробуйте посмотрите в PHP справочнике как работать с сессиями

    а в Joomla сессия идёт как OBJECT из неё и надо доставть вашу переменную (ХОТЯ ВОЗМОЖНО И КАК МАССИВ)

    не сталкивался, но в роде как мысли правильные
     
  5. woojin
    Offline

    woojin Местный Команда форума

    Регистрация:
    31.05.2009
    Сообщения:
    3 209
    Симпатии:
    335
    Пол:
    Мужской
    опоздал... Вам дали более полный коментарий
     
  6. Offline

    Culibin Недавно здесь

    Регистрация:
    03.05.2009
    Сообщения:
    13
    Симпатии:
    0
    Пол:
    Мужской
    progmist, если Вам не составит труда описать этот процесс по-подробнее (что, куда вставить), т.к. в PHP я новичёк
     
  7. omfgpanda
    Offline

    omfgpanda специалист

    Регистрация:
    22.01.2008
    Сообщения:
    673
    Симпатии:
    53
    Пол:
    Мужской
    Есть два способа получить переменную сессии:

    1. Использование массива $_SESSION
    Код (PHP):
    1. $myVar = $_SESSION["myvar"];

    2. Подключение апи фреймворка и работа с ним:
    Код (PHP):
    1. require_once 'libraries/loader.php'; //путь указывается относительно подключающего файла
    2. define('JPATH_BASE',1);  //подсовываем системную константу
    3. jimport('joomla.base.object'); //подключаем библиотеку

    думаю этой библиотеки должно хватить для инициализации JSession.
    Далее получаем вашу переменную:
    Код (PHP):
    1. $myVar = JSession::get("myvar");


    З,Ы,: оч интересно, а зачем Вам сторонние файлы ?
     
  8. Offline

    Culibin Недавно здесь

    Регистрация:
    03.05.2009
    Сообщения:
    13
    Симпатии:
    0
    Пол:
    Мужской
    Дело в том, что мне нужно сделать возможность платного скачивания вотографий в joomgallery. Фотографы регятся, и заливают на сайт свои фотки, а пользователи (не регистрируясь на сайте), покупают их. Я решил сделатьэто так: на странице с фоткой генерируется псевдослучайное число, присваивается переменной и попадает в сессию. После того, как человек нажимает на кнопку "Купить", после чего попадает на сервис оплаты Webmoney. После завершения оплаты, юзер попадает на страницу (Эта страница написана мною, и не принадлежит Joomla!, но лежит в той же директории), в которой выводится из сессии число, которое было сгенерированно на странице с фотографией, затем он вводит это число на странице с фоткой, после чего идёт проверка, если введенное число совпадает со сгенерированным - появляется кнопка скачать
     
  9. omfgpanda
    Offline

    omfgpanda специалист

    Регистрация:
    22.01.2008
    Сообщения:
    673
    Симпатии:
    53
    Пол:
    Мужской
    ну так чем не подходит описанный вариант ? )
     

Поделиться этой страницей

Загрузка...