AllDecay
@AllDecay
Вечно отдыхающий.

Как сделать цикл по значениям из mysql?

Есть необходимость делать каждый день репосты из разных групп/пабликов ВКонтакте в свой. Написал небольшой код, который берет 1 случайную запись со стены по фильтру: не закреп и не репост из другого паблика.
<?php
$token = '';
$gid = '';
$gid2 = '';
$wall = file_get_contents("https://api.vk.com/method/wall.get?v=5.7&filter=all&owner_id=-".$gid2);
$wall = json_decode($wall);
$wall = $wall->response->items;
$i = mt_rand(1, count($wall));
$x = $wall[$i]->post_type;
$z = $wall[$i]->is_pinned;
if($x == 'post'){
if($z !== 1){
$repost = file_get_contents("https://api.vk.com/method/wall.repost?v=5.7&object=wall-".$gid2."_".$wall[$i]->id."&group_id=".$gid."&access_token=".$token);
$repost = json_decode($repost);
}}
?>

Так вот, репосты должны совершаться каждый день перебором(желательно с небольшим таймаутом между каждым дабы избежать нападков со стороны ВК. Так как в моем коде это прокатит только с одним id, а их будет 5-10
id пабликов буду хотелось бы хранить в mysql по дням недели. т.е в понедельник одни иды, во вторник - другие и т.п.
Как все это реализовать на моем быдлокоде?)
  • Вопрос задан
  • 203 просмотра
Решения вопроса 1
AllDecay
@AllDecay Автор вопроса
Вечно отдыхающий.
UPD
<?php
set_time_limit(600);
$ids = array ("", "", "", "", "", ""); //тут id групп/пабликов, из которых нужно сделать репосты
foreach ($ids as $gid2){
$token = '';
$gid = '';
$wall = file_get_contents("https://api.vk.com/method/wall.get?v=5.7&filter=all&owner_id=-".$gid2);
$wall = json_decode($wall);
$wall = $wall->response->items;
$i = mt_rand(1, count($wall));
$x = $wall[$i]->post_type;
$z = $wall[$i]->is_pinned;
if($x == 'post'){
if($z !== 1){
$repost = file_get_contents("https://api.vk.com/method/wall.repost?v=5.7&object=wall-".$gid2."_".$wall[$i]->id."&group_id=".$gid."&access_token=".$token);
$repost = json_decode($repost);
}}
sleep(30);} //указав sleep выполнился только один репост. В чем может быть дело?
?>
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы