Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Облако тегов PHP+FLASH (http://www.flasher.ru/forum/showthread.php?t=139973)

Adobe_Beginner 16.05.2010 23:28

Облако тегов PHP+FLASH
 
Здравствуйте уважаемые пользователи данного форума!
Пожалуйста помогите сделать ссылку из php в iframe.
Суть вот в чем:
Я установил облако тегов которое встроено в iframe и мне нужно из облака подгружать страницы в другой iframe.
Пробывал:
PHP код:

<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 код:

<?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 вот их коды:
С облаком тегов:
упс!!!
Как вы и сказали ссылка прописана в самом флэш и там следующий код:
Код AS1/AS2:

 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
очень нужно...

etc 19.05.2010 18:37

Пункт 3 правил форума.


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

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