Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.07.2009, 01:24
zirjan85 вне форума Посмотреть профиль Отправить личное сообщение для zirjan85 Найти все сообщения от zirjan85
  № 1  
Ответить с цитированием
zirjan85

Регистрация: Jul 2009
Сообщений: 3
По умолчанию вставка PHP-функции в код ActionScript кнопки

У меня вот такая проблема: я все ломаю голову, как мне выполнять в сценарии ActionScript обычной кнопки PHP-сценарий. Вот что я хочу сделать: on (release) {getURL("http://stranica.php?"+<?php echo"".session_name("s")."=".session_id()."" ;?>+"", "_self", "POST")} .Вобщем вы поняли, что я желаю передавать моей кнопке параметры сессии прямо в нее саму, т.е. в строку getURL-а в "http://stranica.php?"+параметры сессии на PHP+"", "_self", "POST". Поясняю сразу же, мой SWF-файл - т.е. моя кнопка сделана во Flash-e без каких-либо полей формы - т.е. чистая кнопка, а вставил я ее в PHP- страницу. Подскажите, плиз, как это можно реализовать. Я сделал таким макаром, но этот вариант не работает! В чем дело, подскажите, пожалуйста!

Старый 23.07.2009, 03:07
JinRu вне форума Посмотреть профиль Отправить личное сообщение для JinRu Найти все сообщения от JinRu
  № 2  
Ответить с цитированием
JinRu

Регистрация: Jun 2009
Сообщений: 28
Я бы удивился, если бы это сработало
PHP выполняется на стороне сервера
SWF работает на стороне клиента
зачем вообще передовать session id?

Старый 23.07.2009, 03:35
IDmitry вне форума Посмотреть профиль Найти все сообщения от IDmitry
  № 3  
Ответить с цитированием
IDmitry
Banned

Регистрация: Jun 2009
Сообщений: 9
А в коде кнопки не хочется запустить SQL Server и выполнить пару запросов???

Флеш, по сути, - клиентское выполнение, а ПэХаПэ - серверное. Мешать их особо не получится.
А если нужен АйДи сессии, то что мешает передать вместе со страницей? Или аджаксом получить?

Старый 23.07.2009, 07:23
Juice_Green вне форума Посмотреть профиль Отправить личное сообщение для Juice_Green Посетить домашнюю страницу Juice_Green Найти все сообщения от Juice_Green
  № 4  
Ответить с цитированием
Juice_Green
 
Аватар для Juice_Green

Регистрация: Dec 2005
Адрес: Новосибирск
Сообщений: 529
Отправить сообщение для Juice_Green с помощью ICQ Отправить сообщение для Juice_Green с помощью Skype™
to @IDmitry:
Цитата:
Или аджаксом получить?
ну это уже перебор, во флеше и так можно послать асинхронный запрос

to @zirjan85:
используйте flashvars, либо
используйте LoadVars

Старый 23.07.2009, 08:42
zirjan85 вне форума Посмотреть профиль Отправить личное сообщение для zirjan85 Найти все сообщения от zirjan85
  № 5  
Ответить с цитированием
zirjan85

Регистрация: Jul 2009
Сообщений: 3
Цитата:
Сообщение от JinRu Посмотреть сообщение
Я бы удивился, если бы это сработало
PHP выполняется на стороне сервера
SWF работает на стороне клиента
зачем вообще передовать session id?
Мне нужно, чтобы при нажатии кнопки на странице осуществлялся переход на другую страницу и при этом сессия не прерывалась. А у меня прерывается.

Добавлено через 8 минут
Цитата:
Сообщение от Juice_Green Посмотреть сообщение
to @IDmitry:

ну это уже перебор, во флеше и так можно послать асинхронный запрос

to @zirjan85:
используйте flashvars, либо
используйте LoadVars
Я уже пробовал и flashvars и LoadVars, но у меня в адресной строке выдает undefined и в принципе, как я увидел, функции PHP вобще не выполняются.

Старый 23.07.2009, 08:54
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 6  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Код:
myLoadVars.load("http://stranica.php?"+<?php echo"".session_name("s")."=".session_id()."" ;?>+"", "_self", "POST");
Вы LoadVars так использовали? Или все-таки не так?

Старый 01.08.2009, 23:02
zirjan85 вне форума Посмотреть профиль Отправить личное сообщение для zirjan85 Найти все сообщения от zirjan85
  № 7  
Ответить с цитированием
zirjan85

Регистрация: Jul 2009
Сообщений: 3
Цитата:
Сообщение от alexcon314 Посмотреть сообщение
Код:
myLoadVars.load("http://stranica.php?"+<?php echo"".session_name("s")."=".session_id()."" ;?>+"", "_self", "POST");
Вы LoadVars так использовали? Или все-таки не так?


У меня через LoadVars не получалось, возможно что-то я не дописывал в коде, как я понял. Я тут полазил ещё раз в интернете и нашёл ответ на мой вопрос. Вот он:

on (release, keyPress "<Enter>"){


instance1.onRelease = function(){ var ps:LoadVars = new LoadVars();
ps.load("z.php");
ps.onData = function(str:String){
getURL(str);
}
}

}


Спасибо ВСЕМ, кто ответил в этой теме!!!!!!!!!

Старый 02.08.2009, 22:12
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 8  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Когда PHP отдает станицу - он может записать в нее SID, во FlashVars, они потом доступны в _level0 внутри SWF. т.е. если вы написали что-то типа:
Код:
<?php 
...
print "<param name=\"FlashVars\" value=\"sid=" . SID . "\"/>";
...
print "<embed ... FlashVars=\"sid=" . SID . "\" ... />";
То ваша переменная будет во флеше тут:
_level0.sid

Но если вам нужен SID для того, чтобы выяснить а существует ли еще сессия, то:
AS
Код AS1/AS2:
import mx.utils.Delegate;
var lv:LoadVars = new LoadVars();
myBytton.onRelease = Delegate.create(this, myButtonDelegate);
lv.onLoad = Delegate.create(this, lvOnLoadDelegate);
function myButtonDelegate():Void
{
    lv.load("my.php?whats-my-sid");
}
function lvOnLoadDelegate(success:Boolean):Void
{
    trace(lv.sid);
}
PHP
Код:
<?php
print "sid=" . SID;
__________________
Hell is the possibility of sanity

Создать новую тему Ответ Часовой пояс GMT +4, время: 21:00.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 21:00.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.