Страница 1 из 1

Узнать, когда четко пройдет по всем друзьям

Добавлено: 11 фев 2014, 19:10
vasXL
Код, который проходится по всем друзьям, соблюдая интервал по 3 запроса в секунду. Нужно сначала пройтись, занося в массив id и город каждого друга в массив, а потом отправить массивы в базу. Почему именно таким образом я собираю города друзей, а не сразу одним методом не спрашивайте, мне так нужно. Но проблема в том, что я не знаю, как сделать, чтобы post происходил четко, когда по всем друзьям прошлись. У меня не получается это сделать, так как само число данных в массиве не предсказуемо, потому что если например друг удален, то ничего не заносится. Пробовал ставить счетчик(как в коде ниже), прибавляя по одному при каждом запросе и отправке post, когда счетчик равен количество друзей. Но это не получается, массив каждый раз разный заносится, видимо потому что запросы асинхронные. Нужно сделать, чтобы POST происходил четко, когда прошлись по всем друзьям. Очень буду признателен за помощь.

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

<html><head><script src="js/jquery-1.8.3.min.js" charset="windows-1251"></script><script src="http://vkontakte.ru/js/api/xd_connection.js?2" type="text/javascript"></script><script type="text/javascript" charset="cp1251" >window.onload = (function() {    VK.init(function() { VK.api("users.get", {user_ids:count,fields:"uids"}, function(data) {        var friends_data = data.response;var mas1 = [];var mas2 = [];    shet = 0;function getMutual(friendid){shet += 1;VK.api("friends.get",{user_id:friendid,fields:"city"},function(data) {  mas1.push(friendid); mas2.push(data.response[0].city);if(shet == friends_data.length){ $.post("vbazu.php", { mas1: mas1, mas2:mas2, }, function(data) {  } );}     }     });    } count = 0;function next_three() {  getMutual(friends_data[count].uid);  getMutual(friends_data[count+1].uid);  getMutual(friends_data[count+2].uid);  count += 3;setTimeout(next_three, 1000);}setTimeout(next_three, 1000);    });   });    }); </script></head><body></body></html>

Re: Узнать, когда четко пройдет по всем друзьям

Добавлено: 12 фев 2014, 13:02
vasXL
Разобрался

Re: Узнать, когда четко пройдет по всем друзьям

Добавлено: 22 фев 2014, 12:43
Koval
не советую использовать полностью js

Re: Узнать, когда четко пройдет по всем друзьям

Добавлено: 23 фев 2014, 10:21
vasXL
Koval, что вы имеете ввиду? Что например можно использовать?

Re: Узнать, когда четко пройдет по всем друзьям

Добавлено: 23 фев 2014, 22:16
Koval
vasXL,частично php,частично js

Re: Узнать, когда четко пройдет по всем друзьям

Добавлено: 25 фев 2014, 19:06
vasXL
Koval, а как здесь можно еще php использовать? Блин, надеюсь на помощь от кого-нибудь, хоть какую-то подсказку, потому что этот код встал и че-то все молчат форуме...