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

Регистация за голоса

Добавлено: 16 мар 2013, 16:50
fitta
У меня в приложенни вот такая система Payments:
http://flapps.ru/forum/post42616.html#p42616

Вот такое обращение к скрипту:

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

 <html><head><script src="http://vkontakte.ru/js/api/xd_connection.js?2"; type="text/javascript"></script><script type="text/javascript">function bymoney(count){VK.callMethod('showOrderBox', { type:'item',item:'money_'+count});}</script></head><body><a href="#" onclick="bymoney(10)">Купить 10 монет</a><a href="#" onclick="bymoney(20)">Купить 20 монет</a></body></html> 
Сам скрипт:

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

 <?phprequire_once("Payments.php"); //Подключаем классheader("Content-Type: text/html; charset=utf-8"); //Устанавливаем кодировку$secret_key = "fd6767hjhkdfjhf444"; //Секретный ключ приложения$items = array(array('item_name'=>'money_10', 'item_title'=>'Десять монет', 'item_price'=>1, 'money'=>10),array('item_name'=>'money_20', 'item_title'=>'Двадцать монет', 'item_price'=>2, 'money'=>20));$payments = new Payments($secret_key, $items);$payments->process($_POST, 'handler'); function handler($data){//Добавление монет пользователю. Подключение к БД я опустил полагаю вы знаете как его сделатьif(mysql_query("UPDATE users SET money = money + " . $data['item']['money'] . " WHERE userid = " . $data['request']['user_id'])) return $data['request']['order_id'];else return FALSE;}?>  
Система была проста за голоса начисляеться валюта приложения, но добавил в приложение еще пару функций, и теперь хочу реализовать регистацию, идея такая
Пользователь вводит свои данные и через POST отправляеться файлу где это все обробатываеться и добавляеться в БД, все придельно просто, но как зделать что бы добавлялось после того как пользователь оплатил покупку.
Или все таки лучше зделать валюту и если у пользователя не хватает денег просто не регистрировать ?

Re: Регистация за голоса

Добавлено: 16 мар 2013, 19:34
sasha^
взять в БД записывать все покупки пользователей...
при регистрации проверять купил ли пользователь, если да - регистрация успешна, нет - отказ в регистрации

Re: Регистация за голоса

Добавлено: 16 мар 2013, 21:27
Влад
я бы передал POST запрос к файлу списывания голоса, и после начисления:
function handler($data)
{
//Добавление монет пользователю. Подключение к БД я опустил полагаю вы знаете как его сделать
//Код добавления монет пользователю.

//Добавление нового пользователя в БД.
//Код добавления нового пользователя

}
записывал бы его в БД. Система сама решит была покупка или нет.

Re: Регистация за голоса

Добавлено: 17 мар 2013, 00:41
fitta
я так надо же передавать POST через JS ? Можешь показать как например передать <input name="login" type="text" size="15" maxlength="15"> через JS в файл который будет добавлять пользователя в базу

Re: Регистация за голоса

Добавлено: 17 мар 2013, 01:12
Fedya

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

<script src="../js/jquery.min.js"></script> <script type="text/javascript" charset="utf8" >$(document).ready(function() {    var link = '';        $('#send').click(function() {        link = $("#link").val();        $.post('sendnews.php',{ "post_link": link},function(data){ });    });});</script>  <input id="link" type="text"><button id="send">Отправить</button>
В sendnews.php придет $_POST['post_link']

Re: Регистация за голоса

Добавлено: 17 мар 2013, 02:08
fitta
Ну POST запрос понятен, вопрос в том как сделать что бы он передавался вместе с покупкой, пробовал смешивать скрипты вот так

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

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min..;<script src="http://vkontakte.ru/js/api/xd_connection.js?2";; type="text/javascript"></script><script type="text/javascript">// Передача POST$(document).ready(function() {var link = ''; $('#send').click(function() {link = $("#link").val();$.post('sendnews.php',{ "post_link": link},function(data){ });});}); // Передача покупкиfunction bymoney(count){VK.callMethod('showOrderBox', { type:'item',item:'money_'+count});}</script></head><body><input id="link" type="text"><a href="#" onclick="bymoney(10)" id="send">Купить</a>
так не передает