![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: Jan 2009
Сообщений: 18
|
Добрый день!
У меня есть ролик кторый строит некторый график. Данные для графика ролик загружает из xml расположенного на сервере. Файл xml обновляется администратором (заливается новый файл с новыми данными). Проблема: при обновлении файла xml флэш ролик его перестает видеть (в тех текстовых полях в которые я заgисываю значения из файла прописывается "underfined"). Флэш его не видит до тех пор пока не этот файл xml не отроешь через браузер. Как победить этот глюк. Загружаю данные таким образом //загрузка xml с данными var mnth_xml:XML = new XML(); mnth_xml.ignoreWhite = true; //игнорировать отсnупы и табуляцию в файле mnth_xml.load( "http://www.domen.ru/ss.xml" ); //загружаем xml mnth_xml.onLoad = function (suc:Boolean) { var dtd:XMLNode = mnth_xml.firstChild; _root.mn1.mn1TextVar = dtd.childNodes[2].attributes.text; _root.mn2.mn2TextVar = dtd.childNodes[1].attributes.text; _root.mn3.mn3TextVar = dtd.childNodes[0].attributes.text; } Спасибо! |
|
|||||
|
Регистрация: Nov 2008
Адрес: Атланта
Сообщений: 1,271
|
ну если файл xml заливаеться заново с новыми данными, то попробуй после заливки обновить страницу браузера в которой твоя флешка, при загрузке флешка считает новые данные из xml, если тебе надо чтоб данные считывались как-то по другому, тут другой способ есть.
Либо попробуй считывать xml с параметром, потому как xml файл кэшируеться и возможно не все данные подхватывает при обновлении
__________________
Пока я жив, Вы горем обеспечены |
|
|||||
|
Регистрация: Jan 2009
Сообщений: 18
|
Ну конечно же я обновляю страницу браузера...
.Проблема в том что после заливки обновленного xml флэш перестает его видеть. т.е. тотже самый ролик считывает файл с таким же названием по такому же адресу... все тоже самое что и до обновления. И ролик начинает видеть xml только после того как из браузера откроешь сам этот xml. Я думал что проблема какянить с кэшем. Кэш в php везде отключил: Здесь какая то фишка обновления или кэширования. Надеюсь на вашу помощь ! |
|
|||||
|
Modus ponens
|
А каким образом файл отдается?
ЗЫ. вариант с рандомным параметром добавленным к xешу при запросе ХМЛя - самый простой, но лучше переименовывать ХМЛ и сообщать об этом флешу во FlashVars каждый раз, когда нужно обновить (чтобы, когда не нужно обновлять, все-таки брать его из кеша).
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Jan 2009
Сообщений: 18
|
Т.е., насколько я понимаю, в случае переименования файла, нужно руками изменять соответвующую vars в текстовом файле например. которая отвечает за имя загружаемого xml ?
Добавлено через 29 минут Вроде с загрузкой с параметром все получилось. НО возник следующий вопрос. Сайт доступен по доменам с www и без www, т.е. http://www.domen.ru и http://domen.ru. На хосте прописан псевдоним для домена. В AS загрузка файла идет с домена вида http://www.domen.ru/file.xml. И соответсвенно когда загружаешь сайт http://domen.ru файл xml не подцепляется (потомучто видимо флэш считает что он лежит в другом домене, а загрузка файлов с других доменов отключена). НУжно чтобы заходя и на http://www.domen.ru и на http://domen.ru ролик нормально отображался. Что нужно прописать в AS чтобы домены с www и без не различались. Может чтонибудь нужно на хосте прописать? Спасибо! Добавлено через 53 часа 31 минуту на хосте эту пролему решить не удалось. В AS просто написал var domen:String = "http://domen.ru"; //в случае если пользователь зашел на домен без www my_xml.loadXML(domen +"myxml?" + rnd ); //загрузка xml с заранее сгенерирвоанным случайным параметром my_xml.Load = function (suc:Boolean) { if ( !suc && (domen == "http://domen.ru") ) {//в том случае если пользователь зашел на домен с www domen = "http://www.domen.ru"; ..заменить домен на имя с www my_xml.loadXML(domen +"myxml?" + rnd ); //загрузка xml с заранее сгенерирвоанным случайным параметром } else { //обработка и дальнейшие дейсвия } } |
|
|||||
|
Modus ponens
|
Да, нужно было на хосте положить crossdomain.xml описывающий политики безопасности и разрешающий загрузку с поддоменов этого сайта. А вообще, если по уму, то в таком случае делать ссылки абсолютными - самому себе палки в колеса ставить.
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Jan 2009
Сообщений: 18
|
А можно не относительные ссылки ставить в моем случае?
Насколько я понимаю ролик загружается в браузере пользователя и работает на локальной машине и именно с локальной машины загружает уже в себя xml с домена. Как в таком случае указать не абсолютный путь? |
|
|||||
|
Регистрация: Jan 2009
Сообщений: 18
|
Поясните плз. Какой тогда синтаксис, нигде не встрачал такой записи?
Т.е. если у меня на хосте лежит ролик в папке http://domen.ru/flash/1 и там же лежит файл xml, то как я должен прописать отноитльный путь? Вот так? или ? |
![]() |
![]() |
Часовой пояс GMT +4, время: 04:22. |
|
|
« Предыдущая тема | Следующая тема » |
|
|