Flash и php сеанс обмена? - PullRequest
       2

Flash и php сеанс обмена?

0 голосов
/ 24 января 2012

Я создал веб-сайт и поместил в него флеш-игру.

Чтобы люди могли играть в эту игру, они должны войти на веб-сайт.

При входе на сайт создается сеанс,Я хочу, чтобы флеш-игра получила идентификатор сессии,

, поэтому я создал функцию, которая получает идентификатор сессии.Он работает только в Internet Explorer и

, когда я попробовал его в Chrome, он не получил идентификатор сеанса.

Так что помощь?

Я написал PHPфайл, который будет использоваться as3 для получения идентификатора сеанса, код php выглядит так:

<?php
define( '_JEXEC', 1 );

define('JPATH_BASE', dirname(__FILE__) );

define( 'DS', DIRECTORY_SEPARATOR );

require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );

require('libraries/joomla/factory.php');
class session
{
    public function getId()
    {
        $mainframe =& JFactory::getApplication('site');
        $mainframe->initialise();

        $user =& JFactory::getUser();
        $user_id = $user->get('id');

        //echo($user_id);

        return $user_id;
    }
}

?>

Когда я попробовал прошить в IE, флэш-память получила правильный идентификатор сеанса, но в Chrome это не так«т.

Ответы [ 2 ]

0 голосов
/ 25 января 2012

Я написал это около 5 лет назад:

http://www.rooftopsolutions.nl/blog/117

Мое окончательное решение состояло в том, чтобы использовать альтернативный токен (не такой, как куки-файл сессии, для безопасности). Маркер будет встроен в тег как flashvar. Затем Flash Player вручную отправляет этот токен с каждым HTTP-запросом.

Наконец, на сервере я бы сопоставил токен с реальным идентификатором сеанса и вызвал session_id () / session_start ().

0 голосов
/ 25 января 2012

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...