Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Общие вопросы о Flash (не затрагивающие ActionScript) (http://www.flasher.ru/forum/forumdisplay.php?f=60)
-   -   LoadVars не у всех срабатывет :( (http://www.flasher.ru/forum/showthread.php?t=79216)

agressive 04.05.2006 12:13

LoadVars не у всех срабатывет :(
 
Подскажите пожалуйся в чем может быть проблемма:
выводу данные из php во флэш так:

LoadV =function (link){
LV = new LoadVars();
LV.load(link);
_root.textboxclip.textbox.text="<Loading...</p>";
LV.onLoad = function(success) {
if (success) {
_root.textboxclip.textbox.text =this.text; }
else {_root.textboxclip.textbox.text = Error data loading";}
}}

link - это соответствующий файл php.

Так вот у меня во всех популярных браузерах данные передаются и отображаются, а вот у многих друзей выскакивает Error data loading.

Раньше думал, что возможно проблемма в шрифте (использую Arial Cyr), но во-первых - он встроен во флэшку (embed), а во-вторых - раз отображается хоть что-то (а именно Error data loading), значит дело не в шрифте видимо, тем более, что не отображаюся даже названия разделов на английском языке (например Connect).

Данные берутся из базы SQL и выводятся в формате utf-8_general_ci. По крайней мере, так написано в структуре таблицы из которой я беру данные.

Сами php файлы сохранены в формате ANSI

в первом кадре мува стоит System.useCodepage=true;

Пробовал сохранять их в UTF-8 и ставить System.useCodepage=false; - тоже самое.

Пробовал даже перед выводом делать принудительную конвертацию данных в utf-8:
echo iconv("CP1251", "utf8","<p align=\"right\"><font size=\"26\">Новости</font></p>");

Та же хрень, причем у меня как назло все и на нескольких компах работает.

Итог - сайт вроде бы готов и перелопатил я его уже по несколько раз, но результата так и не добился.

Подскажите как грамонто организовать передачу данных в связке SQL->PHP->FLASH + русские буквы?Где и в чем я не прав? Важно, чтобы данные отображались у всех, кто заходит на сайт, а не только у меня. Очень нужна помощь!!!!!! Искренне рассчитываю на кваллифицированный ответ. Заранее спасибо.

Буньков Максим 04.05.2006 19:45

попробуй поюзать sendAndLoad
прикольная функция... А еще... php в utf-8 обязательно нуна...
ну тут я думаю еще ченить с безопасностью... флешка чем безопаснее тем противнее.

Madasan 04.05.2006 20:21

Если поставить System.useCodepage=true то тогда точно найдутся компы, которые покажут пользователю не то что хотелось бы, потому что не на всех машинах используется одна и та же системная кодовая страница. А Error data loading это не получен файл, то есть ответ от php, поэтому до шрифтов дело точно не доходит, тут возможно проблема действительно в безопастности, хотя не обязательно, причины по которым не приходит ответ могут быть разные, в некоторых случаях от версии плеера и от браузера зависить может, или даже просто время ожидания ответа привысило лимит.

dow 04.05.2006 22:09

Если я правельно понял,то с твоего компа флэшь загружает переменные,а с других нет.Потому что флэшь не серверный скрипт,он грузит из внешнего источника ЛЮБОЙ машины,у друзей этиф файлов нет,которые загружает флэшь.

agressive 04.05.2006 23:50

dow, все файлы лежат на серваке и у меня и у доброй половины моих друзей работает, а одному другу дал ссылку, так у него постоянно error data Loading, он своим друзьям дал, и у них то же самое. Думаю может дело в каких нибудь настройках самого флэшплеера или я не правильно экспортирую ролик.

По поводу перевода php в utf-8 - пробовал сохранять их в UTF-8 и ставить System.useCodepage=false; - тоже самое, у меня пашет, хотя и не всегда корректно данные отображаются, а у друга - нет.

Максим, sendAndLoad не поможет, так как и ее в одном из разделов использую - ничего.

Короче факт в том, что данные не передаются у некоторых пользователей и причина пока не ясна. Жду Ваших предположений....

agressive 04.05.2006 23:55

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

Madasan 05.05.2006 00:10

Для этого надо попросить друга у которого не работает, помочь разобраться, потому как сложно чего-то понять, когда не видишь что происходит. И проблема как всегда оказывается банальной!

agressive 05.05.2006 11:00

а как он может мне помочь, если он не шарит во флэше? Я к нему домой ездил и ничего так и не понял. В Mozilla FireFox почему-то заработало, в остальных Error data loading, а после того как я уехал и в FireFox то же самое Error data loading появилось. Кто нибудь знает что нибудь о безопастности флэш, может у него где-нить прописан запрет на обмен данными с флэшплеером? Жду Ваших предположений....

Madasan 05.05.2006 11:06

Проверь лог сервера. Для начала. Если нету обращения от твоего товарища, тогда запрос тормозиться у него.

Kinsler 05.05.2006 11:30

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

agressive 05.05.2006 12:59

объем данных не очень большой до 500 символов, уж не знаю как это в байтах.......Error data loading выскакивает у него через сотую долю секунды, то есть сразу же после загрузуи сайта, так что дело наврядли в превышении времени ожидания, у него скорость 256 кбит/с (стрим)

Kinsler 05.05.2006 16:40

гхм
а вот тут кавычку поставить?
:)
я конешно понимаю фигня
но кто их знает эти плееры
else {_root.textboxclip.textbox.text = "Error data loading";}

agressive 05.05.2006 16:48

Кавычка не помогла, естесственно.........тут что-то посерьезнее.

Kinsler 05.05.2006 16:50

есть предложение проверить настройки ie на компе у твоего друга
типа чем они от твоих отличаются
у меня пару раз глюки были с ASP
да и кхм
с безопасностью может быть связано
по какому порту все это дело передаетца?

agressive 05.05.2006 19:04

я честно говоря понятия не имею по какому порту передаются данные........а по-поводй настроек IE, они наверное не при чем, потому что у него ни в одном из браузеров не работает. Файервола у него кстати тоже нет, ну если только брандмауэр встроенный в windows xp SP2.

iNils 05.05.2006 19:07

Надо к нему было ехать с каким нибудь httptrace'ром.
И отслеживать все запросы и ответы.

agressive 05.05.2006 21:28

Интерессное преложение..........

agressive 05.05.2006 22:55

скачал http tracer а ка он работает не понял, может кто объяснит?

iNils 05.05.2006 23:25

Читать от него хелп :)

Kinsler 06.05.2006 11:39

есть все таки подозрение что виноват брендмауэр виндовский
пропиши свой сервак, точнее его адрес во флеше в списке разрешенных узлов
в html в тэге object пропиши параметр:
Код:

<param name="allowScriptAccess" value="sameDomain" />
еще
так как флешка это все таки activeX объект то брендмауер может запрещать с него доступ к удаленному серверу именно из соображений безопасности

MIX-er 06.05.2006 11:48

ну на сколько я понял флешка там же где и скрипт лежит те бренд мауэр не причём...

кстати а почему бы тексты по старинке через XML не попробовать грузить у меня ни когда траблов не было...

Kinsler 06.05.2006 11:53

погоди Миксер
флешка в любому случае выполняеться на клиентской стороне
а вот скрипт не факт

MIX-er 06.05.2006 12:31

кстати спрашивали ли уже о том где человек хостится?

Kinsler 06.05.2006 12:34

нет + еще надо выяснить как скрипт работает

agressive 06.05.2006 12:51

Отвечаю..........хостинг у меня - www.arbatek.ru
флэшка лежит там же где и скрипты, но в разных папках, пути прописаны корректно. у меня же работает :)

Kinsler 06.05.2006 12:59

попроси чтоб твой корешь отключил брендмауэр нафиг
и проверить

Madasan 06.05.2006 13:08

Цитата:

Сообщение от agressive
Отвечаю..........хостинг у меня - www.arbatek.ru
флэшка лежит там же где и скрипты, но в разных папках, пути прописаны корректно. у меня же работает :)

Так это вот кто шалил!
http://flasher.ru/forum/showthread.p...d=1#post529763

agressive 06.05.2006 13:16

<param name="allowScriptAccess" value="sameDomain" /> не помогло

Kinsler 06.05.2006 13:17

а в список разрешенных узлов добавил свой сайт?

agressive 06.05.2006 13:26

по поводу скрипта

news.php

text=
<?

require("connect.inc.php");

$query = "SELECT id, head, short, full, DATE_FORMAT(date,'%d.%m.%y') as date FROM news ORDER BY date DESC";
$result = mysql_query($query);

echo "<p align=\"right\"><font size=\"26\">Новости</font></p>";

echo "<br>";
echo "<br>";
echo "<br>";
echo "<br>";

while($row = mysql_fetch_array($result)) :

echo "<p>";
echo "<b><font color=\"#990000\">".$row["date"]."</font></b> # ".$row["head"]."<br><font color=\"#990000\">----------------------------------------------------------------------</font><br>".$row["short"]."<br>";
echo "<br><a href=\"asfunction:_root.Linkage,".$row["id"]."\"><b><font color=\"#990000\">Подробнее...</font></b></a></p>";
echo "<br>";
endwhile;
mysql_close();
?>

Выводу так:

link="http://www.lunaticscale.ru/1/news.php";

LoadV =function (link){
LV = new LoadVars();
LV.load(link);
_root.textboxclip.textbox.text="<Loading...</p>";
LV.onLoad = function(success) {
if (success) {
_root.textboxclip.textbox.text =this.text; }
else {_root.textboxclip.textbox.text = Error data loading";}
}}

agressive 06.05.2006 13:28

а где этот список разрешенных узлов?

Kinsler 06.05.2006 13:33

System.security.allowDomain("www.shockwave.com");
в первом кадре
ну ессно свой пишешь

Madasan 06.05.2006 13:41

Да не, если на других компах работает, то глобал секюрити тут не причем иначе бы ни у кого не работало! Вресию плеера-то проверял? И что в логе сервера? Есть ли запрос от товарища?

Kinsler 06.05.2006 13:44

2 Madasan
я б все равно написал, просто на всякий случай
мне все же кажеться виноват брендмауэр
который настроен по разному.....

Madasan 06.05.2006 13:50

Брандмауэр то по разному настроен, но алоу домаин это собственная безопасность флэша, и брандмауэр на нее влиять никак не может, он может только разрешить или запретить определенные действия данному приложению, а насколько мне известно, флэш встроенный в браузер пользуется именно его(браузера) услугами когда формирует запрос методом POST, потому что сам плеер формировать POST запросы не может.

Kinsler 06.05.2006 13:52

да, но сам то браузер подчиняеться брендмауэру так?
и если он запрещает любые запросы от activeX приложения
то и браузер их не даст делать?

agressive 06.05.2006 13:59

Kinsler ты просто гений.........я тебе безконечно признателен за помощь.

Для все, кто когда нибудь столкнется с подобным, лекарство:


в первый кадр мувика - System.security.allowDomain("url вашего сайта, причем с www и без www - это разные адреса");


В html или php, в общем туда где прописывается путь к вашей флэшке между тегами <object> вставляем <param name="allowScriptAccess" value="sameDomain"> и все должно заработать..........у меня заработало, всем спасибо!

Kinsler 06.05.2006 14:01

гы
:)
ну и хорошо :)

Madasan 06.05.2006 14:07

хе-хе, <param name="allowScriptAccess" value="sameDomain"> это вообще по умолчанию даже флэшредактор вставляет когда html страницу генерит.
2Kinsler а брандмауэр про allowScriptAccess на вряд ли знает. :away:

Kinsler 06.05.2006 14:18

2 Madasan
8-ка не вставляет автоматом этот параметр
брендмауеэр по идее все ддолжен знать про activeX объекты


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

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