как обмениваться переменными между extern iframe и сайтом - PullRequest
0 голосов
/ 15 июня 2010

по причинам, связанным с разработкой (работа с Facebook-Connect), я помещаю Connect iframe в iframe.таким образом, я могу работать с подключаемым устройством независимо от моего ip и не должен разрабатывать на live-сервере.

iframe, удерживающий кнопку подключения iframe, находится на моем сервере, обращаясь ктот же самый db-сервер, что и для версии разработчика (версия для разработчиков работает на localhsot).

насколько это хорошо ... НО

как я могу сообщить родительскому сайту, что пользовательподключился, так что я получил его профиль в качестве реакции на это?Как я могу реагировать в целом на действие / событие / JS в iframe?есть ли способ?может ли iframe публиковать данные на родительском сайте?как отметка времени и fb_userid?

если материал iframe не работает ... я хотел бы сохранить ip в fb_userid (в db) и проверять совпадения ... но мне не нравитсяэта идея.

Ответы [ 2 ]

1 голос
/ 15 июня 2010

Вы можете передавать переменные во фреймы, используя формат строки запроса через атрибут src iframe, например:

<iframe src="mysite.com?var=test"............>
0 голосов
/ 16 июня 2010

Что ж, благодаря @Sarfraz Ahmed, ваш пост послужил вдохновением для моего решения:

С помощью iframe я посылаю идентификатор текущей сессии в качестве параметра GET.

<iframe src="http://www.online_host.com/scriptxy.php?id_session=<?=session_id()?>"></iframe>

Затем скрипт в iframe выполняет обратный вызов после некоторого действия, например

<script>
location.href="http://localhost/localscript.php?id_session=<?=$_REQUEST['id_session']?>&parameters_here=something";
</script>

Следует отметить, что имя параметров GET не должно быть "sessionid" или "sessid", потому что этоне допускается в большинстве установок apache.

В PHP localscript.php вы делаете что-то вроде:

session_id($_REQUEST['id_session']);
session_regenerate_id();

$_SESSION['param1'] = $_REQUEST['param1'];
...

Теперь вы можете получить доступ к сессионным данным в текущем локально работающем PHP.Вместе с запущенным интервалом запросов AJAX это работает достаточно хорошо для разработки.

Дело в том, что я использую CodeIgniter (с PostgreSQL и ecko сессионного плагина) и получаю проблему с памятью в скрипте драйвера PostgreSQL,который я не понял до сих пор.

...