Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 30.10.2007, 17:35
Shinoby вне форума Посмотреть профиль Отправить личное сообщение для Shinoby Найти все сообщения от Shinoby
  № 1  
Ответить с цитированием
Shinoby
 
Аватар для Shinoby

Регистрация: Oct 2007
Сообщений: 60
По умолчанию Передача параметров из php во Flash генерящийся на основании php параметров.

Задача такова.

Отрабатывает Php и генерит в ХТМЛ переменные и значения переменных. Как их считать я кажется понял. Тобишь во флеш я передаю. А сделать мне надо следующее: Флеш получает разделенные каким либо символом строки с заголовком, ссылкой и кратким описанием (ну или просто несколько переменных сделать для этих 3 видов параметров), но суть не в этом, а в том, как мне сгенерить кучу "лейблов" при клике на которые я бы переходил по ссылке? Не пойму как создать кучу неких лейблов и привязать к ним параметры типа label, link, text - это все что мне бы было нужно. С чего начать и как сделать? Во флене я профан, хотя другие языки знаю некоторые.

Старый 30.10.2007, 17:42
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
XML в руки.

Старый 30.10.2007, 21:47
2morrowMan вне форума Посмотреть профиль Отправить личное сообщение для 2morrowMan Найти все сообщения от 2morrowMan
  № 3  
Ответить с цитированием
2morrowMan
 
Аватар для 2morrowMan

Регистрация: Aug 2007
Сообщений: 467
Пишу находу - работоспособность не гарантирую!
Flash:
Код:
var dataXML= new XML();
dataXML.ignoreWhite = true;
dataXML.load('data.php');
dataXML.onLoad = function (success)
{
	if (success)
	{
		for (var node = dataXML.firstChild.firstChild; node!= null; node = node.nextSibling)
		{
			trace(node.text);
			trace(node.link);
		}
	}
	else
	{
		trace ("XML data loading failed");
	}
};
PHP. "data.php"
Код:
<?php
for ($i = 0; $i < 10; $i++)
{
	$body .= "\n<label text=\"myText".$i."\" link=\"myLink".$i."\" />";
}
print "<data>".$body."\n</data>";
?>
P.S. Администрация, форматирование текста заключенное в тэги [РНР][/РНР] - просто УЖАСНОЕ!


Последний раз редактировалось 2morrowMan; 30.10.2007 в 21:56.
Старый 31.10.2007, 10:35
Shinoby вне форума Посмотреть профиль Отправить личное сообщение для Shinoby Найти все сообщения от Shinoby
  № 4  
Ответить с цитированием
Shinoby
 
Аватар для Shinoby

Регистрация: Oct 2007
Сообщений: 60
"TypeError: Error #1006: value is not a function.
at data_fla::MainTimeline/data_fla::frame1()"

В коде синтаксических ошибок нет, но выдается вышеописанное сообщение при запуске.

Линк на тест

тут же лежит и data.php - генерит все ОК
и data.swf - собственно выдающее ошибку.

Хотя я просто воткнул флешовый код в Layer1 по умолчанию. Может его надо к какому то конкретному созданному заранее объекту привязать? Я не совсем улавливаю код флеша пока. Значения куда сбрасываются - в некий объект "trace"? Как мне на основании этого сгенерить например N количество текстовых полей на основании уже имеющегося (с ранее заданными параметрами шрифта и прочего)? 100% есть же функция для этого. Просто будет не Text1, а Text1(1) или как?

Я не прошу за меня готовый код сделать, но куски мне очень помогут. Как создать копию объекта на основании имеющегося, как потмо пробежать по всем значениям этого TRACE (если это он все хранит) и создать точное кол-во этих текстовых объектов. А можно ли добавить этим текстовым объектам еще параметр и сохранить в него ссылку, а не только вывести на заголовок значение ТЕХТ? Или проще как то сразу из TRACE все цеплять не нагружая излишними данными создаваемые объекты?


Последний раз редактировалось Shinoby; 31.10.2007 в 10:45.
Старый 31.10.2007, 11:29
Shinoby вне форума Посмотреть профиль Отправить личное сообщение для Shinoby Найти все сообщения от Shinoby
  № 5  
Ответить с цитированием
Shinoby
 
Аватар для Shinoby

Регистрация: Oct 2007
Сообщений: 60
Я кажется нашел еще примерчики, но длинные шибко. щас перевариваю...

Я научился работать с XML ужо. Сделал класс и подцеплил его в swf

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


Последний раз редактировалось etc; 31.10.2007 в 13:10.
Старый 31.10.2007, 12:33
2morrowMan вне форума Посмотреть профиль Отправить личное сообщение для 2morrowMan Найти все сообщения от 2morrowMan
  № 6  
Ответить с цитированием
2morrowMan
 
Аватар для 2morrowMan

Регистрация: Aug 2007
Сообщений: 467
Извени, но учить тебя ActionScipt времени нету - смотри уроки в инете.
На счет объекта "trace" вставь просто код:
Код:
trace('Я объект trace :D');

Старый 31.10.2007, 13:11
Shinoby вне форума Посмотреть профиль Отправить личное сообщение для Shinoby Найти все сообщения от Shinoby
  № 7  
Ответить с цитированием
Shinoby
 
Аватар для Shinoby

Регистрация: Oct 2007
Сообщений: 60
Я уже понял это все.
Просто не допру как сгенерить объекты на основании ХМЛ...

trace = echo = print =)

Рельно не могу найти тему о создании копии объектов с добавлением им ну индексов что ли или как их иначе различать?


Последний раз редактировалось etc; 31.10.2007 в 14:06.
Старый 31.10.2007, 14:09
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 8  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Shinoby, если надо что-то добавить *— редактируйте свой пост, а не лепите второй рядом.

Старый 31.10.2007, 14:38
Shinoby вне форума Посмотреть профиль Отправить личное сообщение для Shinoby Найти все сообщения от Shinoby
  № 9  
Ответить с цитированием
Shinoby
 
Аватар для Shinoby

Регистрация: Oct 2007
Сообщений: 60
Код:
package {
import flash.display.Sprite;
import flash.events.Event;
import flash.events.ErrorEvent;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.xml.XMLDocument;

	public class xml_loader extends Sprite {

		public function xml_loader() {
		
			var xmlLoader:URLLoader = new URLLoader();
			var xmlData:XML = new XML();
			xmlLoader.addEventListener(Event.COMPLETE, LoadXML);
			xmlLoader.load(new URLRequest("test.xml"));
			
			
			function LoadXML(event:Event):void {
				xmlData = new XML(event.target.data);
				//trace(xmlData);
				//trace(xmlData.layer.desc.text());
				//trace(xmlData.layer.desc.text()[0]);

				//var nameList:XMLList = xmlData.layer.link.text();
				//trace(nameList);
				//for each (var nameEl:XML in nameList) {
                   //trace (nameEl);
               	//}
				
				
				var layerChildren:XMLList  = xmlData.layer.children();
               	for each (var layerInfo:XML in layerChildren) {
                   trace(""+layerInfo.name());
				   trace("   "+layerInfo);
				   
               	}
				
				var total = xmlLoader.bytesTotal 
				var loaded = xmlLoader.bytesLoaded 
				trace("Total bytes:"+total+" , Loaded bytes:"+loaded);
			}
		}
	}
}
Вот до этого я допер... ну поэкспериментировал, потестил... Там несколько строк заблочены - просто я и так и так тестил и оставил на потом не стирая, что бы синтаксис не забыть.

Нашел пример для создания объектов

Код:
package
{
//
import flash.display.Sprite;
import flash.text.TextField;
//
public class Starter_1 extends Sprite
{
   private var tField:TextField;
   public function Starter_1 ()
   {
       myTest();
   }
   private function myTest():void
   {
       tField = new TextField();
       tField.autoSize = "left";
       tField.background = true;
       tField.border = true;
       tField.x = 20;
       tField.y = 75;
       tField.text = "Hello You, what is your name?";
       addChild(tField);
   }
}
}
Это все по логике должно хранится в классе документа. НО 2 класса не фурычат, в одном конфликтуют, а как этот код мне скомпоновать воедино и как сделать что бы на основании первого генерились tFirld (пусть так называются) и они же еще на события реагировали клик и ежели мыша над объектом (объект в фокусе)? ну немного же осталось, помогите. Все что мог нашел...


Последний раз редактировалось Shinoby; 31.10.2007 в 15:22.
Создать новую тему Ответ Часовой пояс GMT +4, время: 19:33.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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