как переделать код под базу ?

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: как переделать код под базу ?

Сообщение ZEBC »

Fedya

да и без этой скобки ошибку выдает :(
Serge
WEB Team
WEB Team
Сообщения: 520
Зарегистрирован: 04 мар 2011, 21:55

Re: как переделать код под базу ?

Сообщение Serge »

ZEBC
какую ошибку конкретно?
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: как переделать код под базу ?

Сообщение ZEBC »

Serge


это без скобки

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

 Warning: mysql_query() [function.mysql-query]: Access denied for user 'root'@'localhost' (using password: NO) in /home/u587362993/public_html/ok.php on line 16 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/u587362993/public_html/ok.php on line 16 Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/u587362993/public_html/ok.php on line 17 Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/u587362993/public_html/ok.php on line 38 Fatal error: Call to a member function sendNotification() on a non-object in /home/u587362993/public_html/ok.php on line 44   
Serge
WEB Team
WEB Team
Сообщения: 520
Зарегистрирован: 04 мар 2011, 21:55

Re: как переделать код под базу ?

Сообщение Serge »

ZEBC
ну так учитесь читать. Неверно введены данные для подключения к базе.
Ну и в придачу - не подключен класс VkApi.
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: как переделать код под базу ?

Сообщение ZEBC »

Serge тоесть я сделал так подключил правильно может иза vkapi
а vkapi подключать прямо сюда ?

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

   <?        $db_host="mysql.hostinger.ru";       // обычно не нужно изменять        $db_user="u587362993";        // имя пользователя БД        $db_password="@@@@@@";        // пароль БД        $db_name = "u587362993";      // имя БД        $table_name = "stat";                  $api_id="310389775";        $api_key="q3CNpQJgfJQ6DTbаааауцуауцU3o3nуцацуацуffffV";                 $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."&timestamp=".$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;        }        ?> 



этот подойдет vkapi ?


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

       <?php         /**     * VKAPI class for vk.com social network     *     * @package server API methods     * @link http://vk.com/developers.php     * @autor Oleg Illarionov     * @version 1.0     */         class vkapi {        var $api_secret;        var $app_id;        var $api_url;               function vkapi($app_id, $api_secret, $api_url = 'api.vk.com/api.php') {            $this->app_id = $app_id;            $this->api_secret = $api_secret;            if (!strstr($api_url, 'http://')) $api_url = 'http://'.$api_url;            $this->api_url = $api_url;        }               function api($method,$params=false) {            if (!$params) $params = array();            $params['api_id'] = $this->app_id;            $params['v'] = '3.0';            $params['method'] = $method;            $params['timestamp'] = time();            $params['format'] = 'xml';    //      $params['format'] = 'json';            $params['random'] = rand(0,10000);            ksort($params);            $sig = '';            foreach($params as $k=>$v) {                $sig .= $k.'='.$v;            }            $sig .= $this->api_secret;            $params['sig'] = md5($sig);            $query = $this->api_url.'?'.$this->params($params);            $res = file_get_contents($query);            return $res;    //      return json_decode($res, true);        }               function params($params) {            $pice = array();            foreach($params as $k=>$v) {                $pice[] = $k.'='.urlencode($v);            }            return implode('&',$pice);        }    }    ?>        
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: как переделать код под базу ?

Сообщение ZEBC »

вот попробывал все в кучку собрать

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

 // данные доступа к базе данных$db_host="mysql.hostinger.ru";       // обычно не нужно изменять$db_user="u587362242993_app";        // имя пользователя БД$db_password="gbplfhekffff";        // пароль БД$db_name = "u58736244234993_app";      // имя БД$table_name = "stat";       // имя таблицы статистики. Если вы не меняли его в запросе, создающем БД, то и здесь менять его не надо // данные приложения$app_id = '31550385595'; // id приложения$api_secret = 'q3CNpQJgJрdQ6DTbU3o3snV'; // защищенный ключ приложения  $auth_key  = $_POST['auth_key'];$viewer_id = $_POST['viewer_id']; $real_key = md5($app_id."_".$viewer_id."_".$api_secret);if ($auth_key == $real_key){    // соединение с БД    mysql_connect($db_host, $db_user, $db_password) or die (mysql_error());    mysql_select_db($db_name) or die (mysql_error());    mysql_query("SET NAMES 'utf8'");            include 'vkapi.class.php';                 $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."&timestamp=".$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;                ?>   
вдает Parse error: syntax error, unexpected $end in /home/u587362993/public_html/ok.php on line 90
Serge
WEB Team
WEB Team
Сообщения: 520
Зарегистрирован: 04 мар 2011, 21:55

Re: как переделать код под базу ?

Сообщение Serge »

ZEBC
скобка где-то не закрыта (мне влом искать).
ZEBC
Сообщения: 100
Зарегистрирован: 21 июн 2012, 06:42

Re: как переделать код под базу ?

Сообщение ZEBC »

Serge
у тебя ведь есть полный код ? под cron
поделись плиз в лс ато искать 300 лет вроде поставил скобку опять ошибка тока изменилась чуток :D
Parse error: syntax error, unexpected T_VARIABLE in /home/u587362993/public_html/ok.php on line 5
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: как переделать код под базу ?

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

ZEBC
Лучше с изучения основ программирования начни... Сейчас же тупо без понимания копируешь код и не можешь самостоятельно разобраться с очевидными ошибками...
Serge
WEB Team
WEB Team
Сообщения: 520
Зарегистрирован: 04 мар 2011, 21:55

Re: как переделать код под базу ?

Сообщение Serge »

ZEBC писал(а):Serge
у тебя ведь есть полный код ? под cron
поделись плиз в лс ато искать 300 лет вроде поставил скобку опять ошибка тока изменилась чуток :D
Parse error: syntax error, unexpected T_VARIABLE in /home/u587362993/public_html/ok.php on line 5
У меня в коде отправки уведомлений еще очень много других функций, мне не хочется выбирать только нужное. Я скинул нужный кусок, который выбирает уиды и рассылает уведомления (взятый кстати на этом же форуме), переделывать под чужое приложение - нет желания.
Ответить