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

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

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

Регистрация: Jun 2008
Сообщений: 4
Arrow PHP цикл -> HTML таблица -> Flash

Итак, есть PHP скрипт script.php:

PHP код:
<?php
mysql_connect
($dbhost$dbuser$dbpass) or $out "Ошибка соединения";
mysql_select_db($dbname) or $out "БД не найдена";

$data=mysql_query("SELECT * FROM characters ORDER BY level DESC LIMIT 100") or die('Не удалось получить данные из базы.');

echo 
"
<table>
<tr>
<td>№</td>
<td>Ник</td>
<td>Профессия</td>
<td>Общее время</td>
</tr>"
;


$n=1;
while (
$top=mysql_fetch_array($data))
{
    
$onlinetimeH=round(($top[onlinetime]/60/60)-0.5);

echo 
"
<tr>
<td>
$n</td>
<td>
$top[name]</td>
<td>
$class[ClassName]</td>
<td>
$onlinetimeH</td>
</tr>"
;

$n++;
}

echo 
"</table>";

?>

Его результатом является HTML код таблицы...
Нужно эту таблицу запихнуть в текстфилд ... но как известно, флэш не поддерживает подобные HTML тэги: <table>, <td> и т.д
т.е. получается вывести в текстовое поле сам исходный код таблицы, но обрабатывать его флэш естесно не хочет(

Код:
var inp = new LoadVars();
inp.load("script.php");
inp.onData = function (data)
{
    trace (data);
    txt_out = data;
};
Пробовал и через XML, с помощью CDATA - ничего не выходит, результат такой же.

Как это можно реализовать? Во Flash я начинающий, буду признателен за ответ.

Старый 12.06.2008, 20:36
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 2  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
Хм... Иван Дембицкий очень хорошо писал про это. (вроде бы он)
Только я никак не могу найти его статью... Вобщем, это статья про создание таблиц из xml файлов. Если найду - отпишусь.

Старый 13.06.2008, 14:32
Aisaid вне форума Посмотреть профиль Отправить личное сообщение для Aisaid Найти все сообщения от Aisaid
  № 3  
Ответить с цитированием
Aisaid
[+3 19.07.07]
 
Аватар для Aisaid

Регистрация: Aug 2006
Адрес: Kharkov, Ukraine
Сообщений: 129
Отправить сообщение для Aisaid с помощью ICQ
Rem0, здесь где-то была тема про хтмл парсер - класс для вывода более-менее корректного хмтл... поищите
__________________
Самый великий программер - БОГ!

Старый 13.06.2008, 15:18
Rem0 вне форума Посмотреть профиль Отправить личное сообщение для Rem0 Найти все сообщения от Rem0
  № 4  
Ответить с цитированием
Rem0

Регистрация: Jun 2008
Сообщений: 4
Спасибо за советы, сделал значит вот как: PHP генерит приблизительно вот такую таблицу XML:

PHP код:
<table num="#" name="Nickname" level="Level" proff="Class" clan="Clan" battle="PVP" online="Game time">
<
t name="Rem2" level="85" proff="Male Soldier" clan="No" battle="0" online="2 hours">
<
t name="Rem" level="85" proff="Male Soldier" clan="No" battle="0" online="2 hours">
</
table
я ее обрабатуваю во флэше таким образом:

Код:
my_xml = new XML();
my_xml.ignoreWhite = true;
my_xml.onLoad = function(ok) {
	if (ok) {
		F_createTable();
	}
};

my_xml.load("top.xml");
F_createTable = function () {
	
	import TextField.StyleSheet;
	var my_style:StyleSheet = new StyleSheet();
	my_style.setStyle("title", {fontsize:'16px', color:'#006699', fontWeight:'bold', fontFamily:"Tahoma"});
	my_style.setStyle("nameTable", {fontsize:'16px', color:'#990000', fontWeight:'bold', fontFamily:"Arial",marginLeft:"10"});
	my_style.setStyle("text", {fontsize:'12px', color:'#666666', fontFamily:"Courier",marginLeft:"10"});
	_root.createTextField("tf", 1, 10, 10, 630, 680);
	with (tf) {
		html = true;
		multiline = true;
		wordWrap = false;
		styleSheet = my_style;
		htmlText = "<title>Статистика</title><br /><nameTable><textformat tabstops='[30,100,100,100,100,100]' >"+my_xml.childNodes[0].attributes.num+"<tab>"+my_xml.childNodes[0].attributes.name+"<tab>"+my_xml.childNodes[0].attributes.level+"<tab>"+my_xml.childNodes[0].attributes.proff+"<tab>"+my_xml.childNodes[0].attributes.clan+"<tab>"+my_xml.childNodes[0].attributes.battle+"<tab>"+my_xml.childNodes[0].attributes.online+"</textformat></nameTable>";
	}

	var len = my_xml.childNodes[0].childNodes.length;
	for (var i = 0; i<len; i++) {
		tf.htmlText += "<text><textformat tabstops='[30,100,100,100,100,100]'>"+(i+1)+"<tab>"+my_xml.childNodes[0].childNodes[i].attributes.name+"<tab>"+my_xml.childNodes[0].childNodes[i].attributes.level+"<tab>"+my_xml.childNodes[0].childNodes[i].attributes.proff+"<tab>"+my_xml.childNodes[0].childNodes[i].attributes.clan+"<tab>"+my_xml.childNodes[0].childNodes[i].attributes.battle+"<tab>"+my_xml.childNodes[0].childNodes[i].attributes.online+"</textformat></text>";

	}
};
Но после 2-ой табуляции флэш не хочет дальшее ее применять. tabstops дальше первой 100 не отображает. Что я не так делаю?(

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:09.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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