PDA

Просмотр полной версии : Ссылка из .txt


SmokeD
20.10.2009, 18:46
Привет всем!
Помогите решить задачу

Есть баннер, во Flash.
Код ссылки он должен брать из текстового файла.
Подскажите в каком направление копать!

amesqit
20.10.2009, 18:53
почитайте про LoadVars

SmokeD
20.10.2009, 19:55
Нашел такой способ, через FlashVars
Не получается разобраться!

Этот код вставляю в html:

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.adobe.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="1000" height="1000" id="myflashvars" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="myflashvars.swf" />
<param name="FlashVars" value="myURL=http://www.mysite.com/">
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<embed src="myflashvars.swf" FlashVars="myURL=http://www.mysite.com/" quality="high" bgcolor="#ffffff" width="1000" height="1000" name="myflashvars" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" />
</object>

А этот использую для кнопки:

on (release)
{
mybtn.onRelease = function(){
getURL(_level0.myURL,"_blank");
}
}

Где ошибка?

amesqit
20.10.2009, 20:13
on (release)
{
mybtn.onRelease = function(){
getURL(_level0.myURL,"_blank");
}
}

Где ошибка?

жутчайшая конструкция, напишите код в кадре, а не на клипе останется только:
mybtn.onRelease = function()
{
getURL(_level0.myURL,"_blank");
}

SmokeD
20.10.2009, 22:27
жутчайшая конструкция, напишите код в кадре, а не на клипе останется только:
mybtn.onRelease = function()
{
getURL(_level0.myURL,"_blank");
}

Да так лучше!
Но он всеравно пишет о "Остановил потенциально опасную операцию", и просит настроить параметры!

.snet
20.10.2009, 23:06
Fash читает txt файл таким образом:
&переменная1=значение1&переменная2=значение2&переменная3=значение3 .
Например:
&ssilka1=http://asd.ru&ssilka2=http://dsa.com
Надо только написать во флеше.
lordVariable("D:\katalog\file.txt", "", "POST");
И этими переменными можно будет пользоваться

mooncar
20.10.2009, 23:58
Что-то вы тут нагородили - ужас.
Код на кнопках сейчас не используется.
loadVariables сейчас не используется - устарелый метод, не дающий гарантии загрузки данных.
Вот весь алгоритм
Код флешки-банера, который, допустим, находится на http://www.site.ru/ :

var linkVar:LoadVars = new LoadVars();
linkVar.onData = function(src:String) {
if (src != undefined) {
btn.link = src;
btn.onRelease = clickBanner; //btn - мувик во весь банер, которая служит для клика - перехода по ссылке
}
};
linkVar.load('http://www.site.ru/link.txt&r=' + Math.random()); //рандом - для предотвращения кэширования

function clickBanner() {
getURL(this.link, '_blank');
}

Содержимое текстового файла link.txt, который тоже находится на http://www.site.ru/, предназначен для управления банером:
http://www.targetsite.ru/
Все! Тестировать на хостинге!

Добавлено через 8 минут
Если ссылок несколько:

var linkVar:LoadVars = new LoadVars();
linkVar.onLoad = function(success:Boolean) {
if (success) {
btn1.link = this.link1;
btn1.onRelease = clickBanner;
btn2.link = this.link2;
btn2.onRelease = clickBanner;
btn3.link = this.link3;
btn3.onRelease = clickBanner;
}
};
linkVar.load('http://www.site.ru/link.txt&r=' + Math.random()); //рандом - для предотвращения кэширования

function clickBanner() {
getURL(this.link, '_blank');
}

Содержимое текстового файла link.txt:
link1=http://www.targetsite1.ru/&link2=http://www.targetsite2.ru/&link3=http://www.targetsite3.ru/

SmokeD
22.10.2009, 01:06
linkVar:LoadVars = new LoadVars();


Выдает "Синтаксическая ошибка"

mooncar
22.10.2009, 01:08
Конечно будет выдавать, как же иначе - ведь я там var не прописал!
var linkVar:LoadVars = new LoadVars();

.snet
22.10.2009, 10:17
mooncar, loadvariable всегда пользуюсь и всегда грузит, чем он от лоад отличается?

amesqit
22.10.2009, 12:21
.snet, попробуйте почитать в хелпе и попользоваться LoadVars, loadVariables - это устаревшая функция, с помощью класса LoadVars все то же самое делать гораздо удобнее.

SmokeD
23.10.2009, 22:59
var linkVar:LoadVars = new LoadVars();
linkVar.onData = function(src:String) {
if (src != undefined) {
btn.link = src;
btn.onRelease = clickBanner; //btn - мувик во весь банер, которая служит для клика - перехода по ссылке
}
};
linkVar.load('http://www.site.ru/link.txt&r=' + Math.random()); //рандом - для предотвращения кэширования

function clickBanner() {
getURL(this.link, '_blank');
}

Содержимое текстового файла link.txt, который тоже находится на http://www.site.ru/, предназначен для управления банером:
http://www.targetsite.ru/
Все! Тестировать на хостинге!


Нормально откомпилирован, тестил на сервере.
Так и не получилось!

Ссылка не срабатывает