Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   совместная работа flash и MySQL. Помогите с реализацией. (http://www.flasher.ru/forum/showthread.php?t=192782)

fidson 18.01.2013 20:53

совместная работа flash и MySQL. Помогите с реализацией.
 
Есть бд в MySQL, в бд 4 строки:
id
name
xcord
ycord

Сейчас у меня рандомное выведение по коодринатам. И выведение текста:
Код AS3:

                package {
        import flash.display.DisplayObject;
        import flash.display.Sprite;
        import flash.events.Event;
        import flash.external.ExternalInterface;
        import flash.system.Security;
        import flash.text.TextField;
 
 
        public class Main extends Sprite {
 
                public function Main():void {
                        if (stage) init();
                        else addEventListener(Event.ADDED_TO_STAGE, init);
                }
 
                private function init(e:Event = null):void {
                        removeEventListener(Event.ADDED_TO_STAGE, init);
                        // entry point
                        var tf:TextField  = new TextField();
                        tf.textColor = 0x333333;
                        tf.width = 800;
                        tf.height = 600;
                        addChild(tf);
 
                        try {
                                //tf.text = 'Try to register ExternalInterface...';
                                ExternalInterface.addCallback('showPerson', _showPerson);
                                ExternalInterface.addCallback('togglePerson', _togglePerson);
                                //tf.text = 'ExternalInterface is registered';
                        } catch (e:Error) {
                                //tf.text = 'ExternalInterface is NOT registered!';
                        }
                        Security.allowDomain('*');
                }
 
                public function _togglePerson(id:uint, isChecked:Boolean):void {
                        // функция обработки клика по чекбоксу
                        var tf:DisplayObject = getChildByName('person-' + id);
                        tf.alpha = isChecked ? 1 : .5;
                        //tf.size = isChecked ? 1 : 5;
                }
 
                public function _showPerson(id:uint, name:String):void {
                        // функция для добавления как-то объекта
                        // с которым потом будет работа из чекбокса
                        var tf:TextField = new TextField();
 
                        tf.textColor = 0xffffff;
                        //tf.autoSize : String
                        tf.text = name + ' №' + id;
                        tf.name = 'person-' + id ;
                        tf.alpha = .5;
                        tf.x = Math.random() * (800 - tf.width);
                        tf.y = Math.random() * (600 - tf.height);
                        addChild(tf);
 
                }
 
 
        }
 
}

Как сделать что бы вместо текста выводился, допустим, круг и координаты передавались из полей БД(xcord и ycord), а не рандомно генерировались?

Написано в FlashDevelop.

Добавлено через 1 час 17 минут
Я понимаю что надо надо это слепить с ЭТИМ, но мозга не хватает на это(

fidson 23.01.2013 10:24

помогите....

Astraport 23.01.2013 10:28

А где тут mySQL?

caseyryan 23.01.2013 10:56

Более того, тут даже и намека на подключение к ней нет

Astraport 23.01.2013 11:07

Предположу что ExternalInterface через JS получает какие-то серверные данные. Но при чем здесь рисование круга?

Круг рисуется так:

Код AS3:

var circle:Shape = new Shape();
circle.graphics.beginFill(0xff0000, 1);
circle.graphics.drawCircle(pointX, pointY, radius);// положение круга и его радиус
circle.graphics.endFill();
addChild(circle);


fidson 25.01.2013 00:55

Там такая штука:
Есть поисковик по БД, написанный в php странице. В него идёт импорт из этой флешки при выводе результатов(Визуальное отображение на карте найденных объектов). Мне помогли с кодом, но сделали рандомизацию координат и вывод текста. Теперь Я не знаю как сделать, что бы не было рандомного вывода координат(желательно что бы они подгружались из БД). И как заменить в этом коде текст на круг(В идеале что бы был круг, а под ним нидпись, но этого можно не делать).

ps Я очень хотел бы разобраться как работает этот скрипт, ибо он мне ещё пригодится.

js, который передаёт данные во флешку:

Код:

        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script>
if (!$ || !jQuery) alert('Для работы скрипта необходимо подключение к Интернет!');
$( function () {
        // выбираем ссылку на нужную флешку
    var flashPlayer = window.document.testSwf || window.testSwf;
   
    // добавляем найденные объекты
    var persons = [];
    $.each($('tr[id^=person]'), function (i, item) {
        var el = $(item),
            id = el.attr('id').split('-').pop();
        persons.push({id: id, name: el.find('.name').text()});
    });
    $.each(persons, function (i, item) {
        flashPlayer.showPerson(item['id'], item['name']);
    });
   
    // биндинг кликов по чекбоксам
    $('input[name=id]').on('click', function () {
        flashPlayer.togglePerson($(this).val(), $(this).is(':checked')); // вызываем функцию во флешке
    });
});
        </script>


ZicoRio 28.01.2013 17:58

Таки решил написать. Посмотрите на вашу тему и на то что вы в ней написали.
Поясняю: с базой данных работает только PHP (Flash ролик с БД работать не может)
Все запросы в БД и обработка ответов из БД только в PHP. Так что вам нужно
либо подключить знакомого программера PHP, либо самому начать изучать язык.

Вы используете такое понятие как [PHP страница], так вот такого не бывает.
Код PHP выполняется только на сервере и выдает результат например в виде:
текста, html-страницы или просто бинарный пакет и веб-браузер получив это от
PHP-скрипта на сервере решает что с этим делать уже на стороне клиента.
Вам нужно разобраться как все это взаимодействует. Удачи.

GBee 28.01.2013 19:08

2 ZicoRio, вы уж слишком категоричны.

http://code.google.com/p/assql/wiki/Examples Конечно, не очень надежно, но возможно.

А перл или джава с БД не работают? Асп?

ZicoRio 28.01.2013 22:51

Ну конечно возможных вариантов реализации великое множество.
Я исходил из контекста - флешка в браузере, на сервере PHP.
Если все возможное описывать можно сразу книгу писать.


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

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