Помощь с окошком внесения голосов

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в IFrame-приложениях (JavaScript, PHP и т.д)
Ответить
Аватара пользователя
Doker
Модератор
Модератор
Сообщения: 1026
Зарегистрирован: 07 май 2010, 18:53

Помощь с окошком внесения голосов

Сообщение Doker »

Есть код:

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

<?php require('VkApi.class.php');  $db_host="localhost";       $db_user="123";      $db_password="123";      $db_name = "123";$table_name = "123";     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'");   $app_id = 'айди'; $api_secret = 'секрет';  $auth_key  = $_POST['auth_key'];  // auth_key из FlashVars приложения$UserID = $_POST['viewer_id']; // id просматривающего приложение$vote = $_POST['vote'];  function get_url($query) {$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $query);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_TIMEOUT, 10);return curl_exec($ch);curl_close($ch);}$api = new VkApiNode($app_id, $api_secret);$query = $api->getBalance($UserID);$user_balance = new SimpleXMLElement(get_url($query)); if($vote>0){$vote2=$vote*100;}if ($user_balance->balance >=$vote2 && $vote>0) {get_url($query = $api->withdrawVotes($UserID, $vote2)); $scores=1000*$vote; $query2 = 'UPDATE uni01_users SET darkmatter=darkmatter+"'.$scores.'" where `username` ="'.$UserID.'"'; $sql2 = @mysql_query($query2); $ok="1";$query3 = 'INSERT INTO logs_add_mattery  (`username`, `mattery`, `date`,`ok`,`votes`) VALUES ("'.$UserID.'","'.$scores.'","'.time().'","'.$ok.'","'.$vote.'")';    $sql3 = @mysql_query($query3); header("Location: game.php?page=pay");exit();} else{ echo "На вашем счету недостаточно голосов <br />"; echo "На вашем счету: ";echo "not enough votes" + $user_balance->balance;echo " голосов";$vote000=$vote; $ok2="0";$query6 = 'INSERT INTO logs_add_mattery  (`username`, `mattery`, `date`,`ok`,`votes`) VALUES ("'.$UserID.'","'.$scores.'","'.time().'","'.$ok2.'","'.$vote000.'")';    $sql6 = @mysql_query($query6);} ?>
Как сделать что бы при недостаточном балансе выводилось окно пополнения баланса, и заного снятия голосов?
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Помощь с окошком внесения голосов

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

В скрипте выводить например такое

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

if (баланс достаточен) { echo '1';} else { // недостаточен echo '0';}
В самом приложении проверять ответ, если 0, то показать окно.
Аватара пользователя
Doker
Модератор
Модератор
Сообщения: 1026
Зарегистрирован: 07 май 2010, 18:53

Re: Помощь с окошком внесения голосов

Сообщение Doker »

А как проверять если отправляется из html страницы пост запрос?
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: Помощь с окошком внесения голосов

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

С jQuery

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

                    $.post('http://flapps.ru/script.php', {"viewer_id": viewer_id, "auth_key": auth_key },                        function(data){                            if (data==0) {                                // что-то                            } else {                                // что-то                            }                        });
Это я в примере написал 0 и 1. Лучше всё таки использовать формат json.
Ответить