Работа с циклом

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
legioner
Сообщения: 18
Зарегистрирован: 17 сен 2011, 20:05

Работа с циклом

Сообщение legioner »

Написал програмку для редактирования видео с использованием video.edit. Теперь не могу сделать цикл внутри. Вот так работает нормально:

Код: Выделить всё

    function Update(e:Object):void    {         VK.api("video.get", {uid:138711504}, Success, Fail);             }     function Success(e:Object):void    {    VK.api("video.edit", {vid:e[1]["vid"], oid:138711504, name:e[1]["title"], desc:"Описание", privacy_comment:3});txtField.text = e[1]["title"];        }            function Fail(response:Object):void    {        txtField.text = "Не получилось";    }   addChild(txtField); 
А когда вставляю этот участок в цикл for, то выполняеться не все 10 действий, и только последнее. Вот код:

Код: Выделить всё

 for(var i:uint=0;i<10;i++){     function Update(e:Object):void    {         VK.api("video.get", {uid:138711504}, Success, Fail);             }     function Success(e:Object):void    {    VK.api("video.edit", {vid:e[i]["vid"], oid:138711504, name:e[i]["title"], desc:"Описание", privacy_comment:3});txtField.text = e[i]["title"];        }            function Fail(response:Object):void    {        txtField.text = "Не получилось";    }}   addChild(txtField);    
Почему не работает цикл?
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Работа с циклом

Сообщение Александр »

legioner
Потому что чушь написал...
Начни с чего то попроще. Сначала разберись как работает цикл. Потом разберись как работают функции. Потом продумай логику и реализуй. То что ты написал - это вообще бред...
legioner
Сообщения: 18
Зарегистрирован: 17 сен 2011, 20:05

Re: Работа с циклом

Сообщение legioner »

Я знаю, что это бред, но ведь работает, если не использовать цикл.
Просто помогите вставить весь мой бред в цикл, а я дальше буду все это изучать.

Я раньше изучал С++ и PHP и знаю как там устроены циклы. А здесь я не знаком с кодом. В моем понимании, если что-то работает, то если его вставить в for(var i:uint=0;i<10;i++) то оно должно работать 10 раз. А вот как это правильно кодом написать, я пока не знаю. Поэтому прошу у вас помощи
john84
Сообщения: 5
Зарегистрирован: 01 июл 2011, 00:58

Re: Работа с циклом

Сообщение john84 »

В изучении С++ видимо даже до ОПП не добрались, раз такие вопросы задаете. Ознакомьтесь для начала с общими принципами, схожими для всех языков.
А с вашим подходом у вас ничего дельного не выйдет.
legioner
Сообщения: 18
Зарегистрирован: 17 сен 2011, 20:05

Re: Работа с циклом

Сообщение legioner »

Просто подскажите, как в моем случае сделать цикл. Если не сложно, напишите как это сделать кодом. Для вас же не сложно, а мне уже глаза болят учебники читать.
Аватара пользователя
psix55
Модератор
Модератор
Сообщения: 1015
Зарегистрирован: 09 дек 2009, 17:16

Re: Работа с циклом

Сообщение psix55 »

Ты напиши то, что тебе надо. Я имею ввиду напиши то, что должно произойти. Зачем тебе цикл и т.д. Я ленивый, и бесплатно редко пишу целый код (людям, которые мало чего понимают), но если прям очень надо, то напишу.
legioner
Сообщения: 18
Зарегистрирован: 17 сен 2011, 20:05

Re: Работа с циклом

Сообщение legioner »

Я в первом посте написал свой код, который работает, если не использовать цикл

Код: Выделить всё

function Update(e:Object):void    {         VK.api("video.get", {uid:138711504}, Success, Fail);             }     function Success(e:Object):void    {   VK.api("video.edit", {vid:e[1]["vid"], oid:138711504, name:e[1]["title"], desc:"Описание", privacy_comment:3});txtField.text = e[1]["title"];        }           function Fail(response:Object):void    {        txtField.text = "Не получилось";    }   addChild(txtField); 
Тоесть, с помощью video.get берутся данные о видео, а с помощью video.edit изменяются. Сейчас изменяется только первое видео, а я хочу чтоб одновременно, например штук 100 изменялось. Чтоб, например, один раз введу что-то вместо слова "Описание", и оно б изменилось сразу во всех видео.
Аватара пользователя
psix55
Модератор
Модератор
Сообщения: 1015
Зарегистрирован: 09 дек 2009, 17:16

Re: Работа с циклом

Сообщение psix55 »

Понятно. поздно вечером напишу код. Сейчас смотрю хауса :D
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Работа с циклом

Сообщение Александр »

legioner
Сервер принимает не более трёх запросов в секунду, содержащих одинаковые параметры api_id и viewer_id. То есть запущенное конкретным пользователем приложение не должно отправлять более трёх запросов в секунду, в противном случае сервер возвращает ошибку "Too many requests per second".
http://vkontakte.ru/developers.php?oid= ... %D1%81_API

Ну и как твой цикл это обработает? Логику продумать надо...
Прочти основы ActionScript. Там есть такое понятие, как СОБЫТИЕ. Это очень важно.
legioner
Сообщения: 18
Зарегистрирован: 17 сен 2011, 20:05

Re: Работа с циклом

Сообщение legioner »

Александр писал(а):legioner
Сервер принимает не более трёх запросов в секунду, содержащих одинаковые параметры api_id и viewer_id. То есть запущенное конкретным пользователем приложение не должно отправлять более трёх запросов в секунду, в противном случае сервер возвращает ошибку "Too many requests per second".
http://vkontakte.ru/developers.php?oid= ... %D1%81_API

Ну и как твой цикл это обработает? Логику продумать надо...
Прочти основы ActionScript. Там есть такое понятие, как СОБЫТИЕ. Это очень важно.
Насколько я понял, то за 1 секунду можно будет только 1 видео отредактировать? Если так - то может как-то можно настроить задержку в цикле. Или я что-то не так понял?
А про события я обязательно прочитаю.
Ответить