Просмотр полной версии : Облако тегов PHP+FLASH
Adobe_Beginner
16.05.2010, 23:28
Здравствуйте уважаемые пользователи данного форума!
Пожалуйста помогите сделать ссылку из php в iframe.
Суть вот в чем:
Я установил облако тегов которое встроено в iframe и мне нужно из облака подгружать страницы в другой iframe.
Пробывал:
<a href="lection/lection.htm" target="RIN" style="font-size: 15pt">Лекции</a>
но видимо свойство target не работает в php, вопрос в следующем:
Как в php сделать ссылку на открытие документа в iframe с именем "RIN"?
Заранее спасибо за ответы!
Вот ссылка на данное облако тегов -http://w-blog.ru/node/22
membrilius
17.05.2010, 01:53
причем тут PHP...
Вообще фреймы лучше не использовать.
Но есть очень надо, то так должно работать:
FRAME1 (frame1.html) - фрейм с облаком тегов
<a href="http://rambler.ru" target="frame2">link</a>
Станица содержащая два фрейма:
<iframe src="frame1.html" height="300" width="600" name="frame1"></iframe>
<iframe height="300" width="600" name="frame2"></iframe>
При клике на ссылке в frame1 .. страница открывается в frame2...
Вообще там есть некоторые нюансы с открытием страницы во флейме.. допустим flasher.ru откроется в новом окне ))
Добавлено через 10 минут
А у Вас облако флешевское... Там помойму через какой-нибудь getURL не откроется..
Тогда может и не правильно, но я бы ставил на на ссылки вызов AS функции через "asfunction", отдавал параметром ссылку, и эта функция вызывала JavaScript функцию которая загружала страницу во втором фрейме.
Поэкспериментируйте.
Добавлено через 13 минут
ой нет
getURL(url:String [, window:String [, "variables":String]]) : Void
"window Необязательный параметр, указывающий окно или фрейм HTML, в который должен быть загружен документ. Вы можете ввести имя специально названного окна"
Значит обработчик облака игнорирует атрибут target который Вы передаёте во флешку.
Adobe_Beginner
17.05.2010, 16:15
membrilius, спасибо за столь содержательный ответ!
Но увы вы сослались на то же самое свойство target, а как я понял оно не работает в php? Я довольно поверхностно знаком с php поэтому хочу узнать может быть у него есть собственные свойства ссылок,отличные от html?
Обработчик облака тегов написан на php вот его полный код:
<div id="tags">
<?php
$tags = '<tags>
<a href="index.php" style="font-size: 15pt">Главная</a>
<a href="lection/lection.htm" target="RIN" style="font-size: 15pt">Лекции</a>
...
</tags>';
?>
Для корректного отображения этого элемента вам необходимо установить FlashPlayer и включить в браузере Java Script.
<script type="text/javascript">
var rnumber = Math.floor(Math.random()*9999999);
var widget_so = new SWFObject("tagcloud.swf?r="+rnumber, "tagcloudflash", "155", "150", "9", "#ffffff");
widget_so.addParam("allowScriptAccess", "always");widget_so.addVariable("tcolor", "0x333333");
widget_so.addVariable("tspeed", "115");
widget_so.addVariable("distr", "true");
widget_so.addVariable("mode", "tags");
widget_so.addVariable("tagcloud", "<?php echo urlencode($tags); ?>");
widget_so.write("tags");</script>
</div>
Как видите я указал имя фрейма, но страница все равно открывается в новом окне.
В результате долгих экспериментов я пришел к выводу:
Может быть iframe с облаком не видит тот iframe в который я хочу подгрузить страницу?
Эти два ifram'a размещены на одной странице php вот их коды:
С облаком тегов:
упс!!!
Как вы и сказали ссылка прописана в самом флэш и там следующий код:
var _loc_2:URLRequest;
_loc_2 = new URLRequest(_node["@href"]);
navigateToURL(_loc_2, "_self");
return;
Теперь мне его нужно заменить на имя моего фрейма RIN
плиз откликнитесь у кого есть Flash 9 пожалуйста замените в файле
Action/com/roytanck/wpcumulus/tag который находится во вложенном файле swf
строчку :
navigateToURL(_loc_2, "_self");
на
navigateToURL(_loc_2, "RIN");
пожалуйста - просто у меня нет возможности скачать Flash 9.
Очень нужно...
Добавлено через 4 минуты
Вот ссылка на этот файл:
http://files.gameworld.kz/b4pe98nsu5.html
Пожалуйста замените в нем строчку:
navigateToURL(_loc_2, "_self");
на строчку:
navigateToURL(_loc_2, "RIN");
очень нужно
membrilius
17.05.2010, 18:59
а тут ещё и AS3..
А на счёт PHP
<?php
$tags = '<tags>
<a href="index.php" style="font-size: 15pt">Главная</a>
<a href="lection/lection.htm" target="RIN" style="font-size: 15pt">Лекции</a>
...
</tags>';
?>
это значит что Вы переменный $tags присваиваете HTML код ...
А это:
widget_so.addVariable("tagcloud", "<?php echo urlencode($tags); ?>");
Это он его распечатываем и передаёт в SWFObject .. который передаёт
вот это:
<a href="index.php" style="font-size: 15pt">Главная</a>
<a href="lection/lection.htm" target="RIN" style="font-size: 15pt">Лекции</a>
Преобразованное через urlencode() (т.е. там пробелы, спец символы и кириллица кодируется)
Т.е во флешку идёт вот что:
%3Ca+href%3D%22index.php%22+style%3D%22font-size%3A+15pt%22%3E%C3%EB%E0%E2%ED%E0%FF%3C%2Fa%3E%3Ca+href%3D%22lection%2Flection.htm%22+target%3D%22RIN%22+style%3D%22font-size%3A+15pt%22%3E%CB%E5%EA%F6%E8%E8%3C%2Fa%3E
А вот уже флешка выбирает иэ этого URL ... но видимо не выбирает target
Тоесть по умолчанию стоит новое окно.
Adobe_Beginner
18.05.2010, 12:47
membrilius, спасибо еще раз за столь содержательный ответ, в действительности видимо оно так и есть...
И как я понял за открытие страницы в новом окне отвечает код:
navigateToURL(_loc_2, "_self");
Поэтому мне очень нужно изменить это значение на имя iframe, т.е. привести к вот такому виду:
navigateToURL(_loc_2, "RIN");
Но мой Macromedia flash не может открыть файл с AS3.
Помогите пожалуйста, потому что возможности скачать новый flash у меня нет, так как сижу на dial-up и время уже поджимает...
Очень прошу измените всего лишь одну строчку в файле:
Action/com/roytanck/wpcumulus/tag который находится во вложенном файле swf
Вот ссылка на этот файл:
http://files.gameworld.kz/b4pe98nsu5.html
Добавлено через 5 минут
Помогите пожалуйста этот файл весит всего лишь 10.5 КБ.
Добавлено через 2 часа 12 минут
Очень нужно помогите пожалуйста....
membrilius
18.05.2010, 15:25
я с CS4 не работал.. может я что не знаю, но тут экспортируется класс com.roytanck.wpcumulus.TagCloud
который он не находит...
Adobe_Beginner
18.05.2010, 17:47
membrilius, спасибо Вам добрый человек за то что откликаетесь на мои просьбы!
То есть у вас открывается сам файл но не находит класс?
Добавлено через 8 минут
Я признаться не знаток flash, но вот полные коды классов в одном архиве:
http://files.gameworld.kz/s75dc5bg54.html
,где tag.txt - код класса Action/com/roytanck/wpcumulus/tag
TagCloud.txt - код класса Action/com/roytanck/wpcumulus/tag/TagCloud
может это поможет?
Добавлено через 6 часов 39 минут
Помогите пожалуйста...
Откройте файл во flash поддерживающем AS3 и измените всего одну строчку...
Очень нужно, ребят помогите, а?
Добавлено через 19 часов 31 минуту
membrilius, откройте пожалуйста попробуйте еще раз в это архиве все классы и компоненты весит он 6,1 кБ:
http://files.gameworld.kz/b20h3uhm9g.html
очень нужно...
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.