Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
ZEBC
Сообщения: 100 Зарегистрирован: 21 июн 2012, 06:42
Сообщение
ZEBC » 07 ноя 2012, 19:01
есть код который взят отсюда
http://flapps.ru/forum/topic1317.html?
Код: Выделить всё
<? $api_id="ид приложениия"; $api_key="ключ приложения"; $userids = ""; $file_name='topgame/statistika.txt'; //Директория с пользователями $fcontens=file($file_name); if ($fcontens) { $pieces1 = explode(" ", $fcontens[0]); if ($pieces1[0]) { $userids = $pieces1[0]; } $pieces2 = explode(" ", $fcontens[1]); if ($pieces2[0]) { $userids = $userids.",".$pieces2[0]; } $pieces3 = explode(" ", $fcontens[2]); if ($pieces3[0]) { $userids = $userids.",".$pieces3[0]; } $pieces4 = explode(" ", $fcontens[3]); if ($pieces4[0]) { $userids = $userids.",".$pieces4[0]; } $pieces5 = explode(" ", $fcontens[4]); if ($pieces5[0]) { $userids = $userids.",".$pieces5[0]; } $pieces6 = explode(" ", $fcontens[5]); if ($pieces6[0]) { $userids = $userids.",".$pieces6[0]; } $pieces7 = explode(" ", $fcontens[6]); if ($pieces7[0]) { $userids = $userids.",".$pieces7[0]; } //для теста: echo "отравляем уведомление на:".$userids; //теперь в $userids есть 7 ид игроков } $mesage="Приветик! Ты один из претендентов на супер приз! Включайся в борьбу :)"; $rand = rand(); $timestamp = time()+300; $sig = md5("api_id=".$api_id."message=".$mesage."method=secure.sendNotificationrandom=".$rand."timestamp=".$timestamp."uids=".$userids."v=2.0".$api_key); $postvars="api_id=".$api_id."&message=".$mesage."&method=secure.sendNotification&random=".$rand."×tamp=".$timestamp."&uids=".$userids."&v=2.0&sig=".$sig; $chp = curl_init('http://api.vkontakte.ru/api.php'); curl_setopt($chp, CURLOPT_HEADER,0); curl_setopt($chp, CURLOPT_RETURNTRANSFER ,1); curl_setopt($chp, CURLOPT_POST, 1); curl_setopt($chp, CURLOPT_POSTFIELDS, $postvars); $res = curl_exec($chp); curl_close($chp); if ($res) { //для теста echo "<br>Отправилось уведомления до: ".$res; } ?>
Как же его переделать под базу с uid пользователями?
или подкиньте код под cron
ZEBC
Сообщения: 100 Зарегистрирован: 21 июн 2012, 06:42
Сообщение
ZEBC » 07 ноя 2012, 22:53
этот код отправки уведомлений он берет идешники из txt фаила а мне надо както сделать под базу )
ZEBC
Сообщения: 100 Зарегистрирован: 21 июн 2012, 06:42
Сообщение
ZEBC » 08 ноя 2012, 17:58
люди помогиете плиз
ZEBC
Сообщения: 100 Зарегистрирован: 21 июн 2012, 06:42
Сообщение
ZEBC » 08 ноя 2012, 18:07
Александр прошу прошения за выше сказание слова ))) правила не читал сейчас прочту
Serge
WEB Team
Сообщения: 520 Зарегистрирован: 04 мар 2011, 21:55
Сообщение
Serge » 08 ноя 2012, 18:37
Код: Выделить всё
$query = 'SELECT `uid` FROM `users`'; $res = mysql_query($query); $count = mysql_num_rows($res); if($count > 100) { for ($i = 0; $i < ceil($count/100); $i++) { $uids = ''; $sql = 'SELECT `uid` FROM `users` ORDER BY `uid` LIMIT ' . ($i*100) . ', 100'; $res = mysql_query($sql); while($row = mysql_fetch_assoc($res)) { $uids = $uids.$row[uid].','; } $uids = substr($uids, 0, -1); $uids = split(',', $uids); $query = $api -> sendNotification($uids, $message); get_url($query); } } else { $uids = ''; while($row = mysql_fetch_assoc($res)) { $uids = $uids.$row[uid].','; } $uids = substr($uids, 0, -1); $uids = split(',', $uids); $query = $api -> sendNotification($uids, $message); get_url($query); }
Названия переменных/таблиц делайте сами. Этот код выбирает уиды пользователей из базы и высылает им $message.
ZEBC
Сообщения: 100 Зарегистрирован: 21 июн 2012, 06:42
Сообщение
ZEBC » 08 ноя 2012, 21:05
Serge
не получилось выдает ошибку
Serge
WEB Team
Сообщения: 520 Зарегистрирован: 04 мар 2011, 21:55
Сообщение
Serge » 08 ноя 2012, 22:03
ZEBC писал(а): Serge
не получилось выдает ошибку
Я его скопировал со своего приложения. Там все работает, уведомления уходят.
Смотрите у себя, что за ошибка, как править. И да, надеюсь подключили вкапи класс. И курл на хостинге есть.
ZEBC
Сообщения: 100 Зарегистрирован: 21 июн 2012, 06:42
Сообщение
ZEBC » 09 ноя 2012, 11:54
Serge
курл да есть
у меня получился такой код
Код: Выделить всё
<? $api_id="ид приложениия"; $api_key="ключ приложения"; $userids = "100"; $query = 'SELECT `uid` FROM `stat`'; $res = mysql_query($query); $count = mysql_num_rows($res); if($count > 100) { for ($i = 0; $i < ceil($count/100); $i++) { $uids = ''; $sql = 'SELECT `uid` FROM `stat` ORDER BY `uid` LIMIT ' . ($i*100) . ', 100'; $res = mysql_query($sql); while($row = mysql_fetch_assoc($res)) { $uids = $uids.$row[uid].','; } $uids = substr($uids, 0, -1); $uids = split(',', $uids); $query = $api -> sendNotification($uids, $message); get_url($query); } } else { $uids = ''; while($row = mysql_fetch_assoc($res)) { $uids = $uids.$row[uid].','; } $uids = substr($uids, 0, -1); $uids = split(',', $uids); $query = $api -> sendNotification($uids, $message); get_url($query); } //для теста: echo "отравляем уведомление на:".$userids; //теперь в $userids есть 7 ид игроков } $mesage="Приветик! Ты один из претендентов на супер приз! Включайся в борьбу :)"; $rand = rand(); $timestamp = time()+300; $sig = md5("api_id=".$api_id."message=".$mesage."method=secure.sendNotificationrandom=".$rand."timestamp=".$timestamp."uids=".$userids."v=2.0".$api_key); $postvars="api_id=".$api_id."&message=".$mesage."&method=secure.sendNotification&random=".$rand."×tamp=".$timestamp."&uids=".$userids."&v=2.0&sig=".$sig; $chp = curl_init('http://api.vkontakte.ru/api.php'); curl_setopt($chp, CURLOPT_HEADER,0); curl_setopt($chp, CURLOPT_RETURNTRANSFER ,1); curl_setopt($chp, CURLOPT_POST, 1); curl_setopt($chp, CURLOPT_POSTFIELDS, $postvars); $res = curl_exec($chp); curl_close($chp); if ($res) { //для теста echo "<br>Отправилось уведомления до: ".$res; } ?>
все подключено но проблема выдает ошибку