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

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

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

Регистрация: Jul 2009
Сообщений: 149
По умолчанию Не загружаються переменные из php

PHP код:
<?php
$var1 
="my_var1";
$var2 ="my_var2";
echo 
'var1='.$var1.'&var2='.$var2;
?>
Код AS1/AS2:
var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(success:Boolean) {
    if (success) {
		trace(this.var1);
		trace(this.var2);		
    } 
};
my_lv.load("http://misite.ru/params.php");
трейсится вот такая белиберда

undefined
'.$var2;

?>

Не могу разобраться как мне получить значения этих переменных. На форуме куча таких тем и, вроде, я всё делаю по примеру, но ничего не выходит. Пожалуйста укажите на мои ошибки.

Старый 10.06.2010, 17:59
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 2  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
а что выходит в браузере, если банально набрать "http://misite.ru/params.php"?

Старый 10.06.2010, 18:35
ObOs вне форума Посмотреть профиль Отправить личное сообщение для ObOs Найти все сообщения от ObOs
  № 3  
Ответить с цитированием
ObOs
 
Аватар для ObOs

Регистрация: Jul 2009
Сообщений: 149
Такая ерунда трейсится при тесте локально.
Если в бить в браузере, как вы сказали то появляется

Цитата:
var1=my_var1&var2=my_var2
Если закинуть php'шку на сервер, то флеш трейсит
Цитата:
my_var1
my_var2<!-- ><!-- "><!-- '><!-- ;><!-- -->
</textarea></form></title></comment></a></div></span></ilayer></layer></iframe></noframes></style></noscript>
</table></script></applet></font>

<!-- inner counter-->
<script type="text/javascript">
pseudocounter = 'http://register.hut2.ru/g/pseudocounter.js';
document.write('<script type="text/javascript" src="' pseudocounter '?' Math.random() '"></scr' 'ipt>');
</script>
Я только начал изучать php и прочие серверные вещи, по-этому прошу прощения если не ясно выражаюсь

Старый 15.06.2010, 14:34
ObOs вне форума Посмотреть профиль Отправить личное сообщение для ObOs Найти все сообщения от ObOs
  № 4  
Ответить с цитированием
ObOs
 
Аватар для ObOs

Регистрация: Jul 2009
Сообщений: 149
Попробовал таким же образом грузить переменные с текстового файла - все работает, а почему не грузит с php не пойму. И скажите пожалуйста, в чем разница между onLoad и onData? Прочитав хелп я что-то не понял разницы.

Старый 15.06.2010, 16:43
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 5  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
2 ObOs:
Цитата:
<!-- ><!-- "><!-- '><!-- ;><!-- -->
</textarea></form></title></comment></a></div></span></ilayer></layer></iframe></noframes></style></noscript>
</table></script></applet></font>

<!-- inner counter-->
<script type="text/javascript">
pseudocounter = 'http://register.hut2.ru/g/pseudocounter.js';
document.write('<script type="text/javascript" src="' pseudocounter '?' Math.random() '"></scr' 'ipt>');
</script>
Вот это вот бред очень поход на вставку какого-то баннера или подобного мусора на страницы вашего сайта. Такое часто делается на бесплатных хостингах. Оно присоединяет его в конец всех PHP-файлов, считая их страницами.
Можете попробовать его обмануть, сделав не
Цитата:
echo 'var1='.$var1.'&var2='.$var2;
а
Цитата:
echo 'var1='.$var1.'&var2='.$var2.'&musor=';
Как видите из флешового трейса, этот мусор у вас выводится вместе со второй переменной. В мусоре нет символа '&', а потому и значение переменной и мусор считаются одной строкой, единым целым. Добавив третью переменную musor, вы запихнёте мусор в musor и просто не будете читать musor в своей флешке.
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

Старый 15.06.2010, 17:21
ObOs вне форума Посмотреть профиль Отправить личное сообщение для ObOs Найти все сообщения от ObOs
  № 6  
Ответить с цитированием
ObOs
 
Аватар для ObOs

Регистрация: Jul 2009
Сообщений: 149
Хемуль, спасибо вам огромное.Ваш вариант всё исправил. Я на начальной стадии обучения по-этому действительно пользуюсь бесплатным хостингом. Но пока не пойму почему когда php файл лежит у меня на компе, то при загрузке с него переменных во флеш трейсится вот это:
Цитата:
undefined
'.$var2;

?>

Старый 15.06.2010, 17:57
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 7  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
2 ObOs:
А что значит "лежит"? Просто вот так вот лежит? PHP-файл должен исполняться как программный код специальным серверным интерпретатором. То есть это как бы программа и выходит, что вы загружаете во флешку не результат её работы, а её исходный код.
Можете установить у себя на компьютере сервер и запускать PHP-файлы. Будете держать у себя локальный сервер. Так очень многие делают.
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

Старый 15.06.2010, 18:05
ObOs вне форума Посмотреть профиль Отправить личное сообщение для ObOs Найти все сообщения от ObOs
  № 8  
Ответить с цитированием
ObOs
 
Аватар для ObOs

Регистрация: Jul 2009
Сообщений: 149
Теперь понял, повторно большое вам спасибо. Последний маленький вопрос:а в чем различие между обработчиками onLoad и onData и в каком случае какой использовать?

Старый 15.06.2010, 18:57
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 9  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
Цитата:
Сообщение от ObOs Посмотреть сообщение
Теперь понял, повторно большое вам спасибо. Последний маленький вопрос:а в чем различие между обработчиками onLoad и onData и в каком случае какой использовать?
Когда вы пользуетесь LoadVars, вы можете вызывать для экземпляров этого класса методы load и sendAndLoad.
Они начинают загрузку данных с сервера. Когда все данные с сервера загружены, вызывается обработчик:
Код AS1/AS2:
loadVars.onData = function(data:String)
{
...
}
Тут можно сделать свой парсинг данных, пришедших с сервера и затем вызвать обработчик onLoad. Либо Flash Player сделает это сам, использовав алгоритм парсинга, установленный по умолчанию. onData вызывается либо при успешной загрузке, либо при ошибке загрузки и параметр data будет либо содержать URL-кодированный набор переменных, либо undefined.
То есть, сперва вызывается onData просто на получение всех данных или на ошибку. Затем происходит парсинг данных и лишь затем вызывается onLoad:
Код AS1/AS2:
loadVars.onLoad = function(success:Boolean)
{
...
}
параметр success в обработчике показывает, были ли переменные загружены успешно.
Короче говоря, если вам просто нужно загрузить переменные с сервера, пользуйтесь обработчиком onLoad.
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

Старый 16.06.2010, 12:20
ObOs вне форума Посмотреть профиль Отправить личное сообщение для ObOs Найти все сообщения от ObOs
  № 10  
Ответить с цитированием
ObOs
 
Аватар для ObOs

Регистрация: Jul 2009
Сообщений: 149
Хемуль, еще раз огромное вам спасибо за ответы на нубские вопросы.

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

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

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


 


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


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