Здесь показаны различия между двумя версиями данной страницы.
Следущая версия | Предыдущая версия Следущая версия Both sides next revision | ||
closed-paid-sample [2011/08/28 10:08] admin создано |
closed-paid-sample [2011/09/21 09:26] admin |
||
---|---|---|---|
Строка 14: | Строка 14: | ||
$summa=50; //Стоимость доступа к платному разделу, в рублях | $summa=50; //Стоимость доступа к платному разделу, в рублях | ||
$period=60*60*24*2; //Время доступа, в секундах (60 секунд * 60 минут * 24 часа * 2 суток = 172800 секунд). Исчисляется от времени поступления оплаты за код доступа. | $period=60*60*24*2; //Время доступа, в секундах (60 секунд * 60 минут * 24 часа * 2 суток = 172800 секунд). Исчисляется от времени поступления оплаты за код доступа. | ||
- | $login='demo'; //Ваше "Имя пользователя" (логин) в системе OnPay.ru | + | $login='demo1'; //Ваше "Имя пользователя" (логин) в системе Onpay.ru |
- | $key='a2su3ig8y'; //Ваш "Секретный пароль для API IN" в системе OnPay.ru | + | $key='a2su3ig8y'; //Ваш "Секретный пароль для API IN" в системе Onpay.ru |
/* Для того, чтобы закрыть доступ к папке, данный код необходимо размещать в индексном файле (index.php) */ | /* Для того, чтобы закрыть доступ к папке, данный код необходимо размещать в индексном файле (index.php) */ | ||
$path='http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; //Путь к файлу с этим кодом (определяется автоматически), например: http://onpay.ru/dir/index.php | $path='http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']; //Путь к файлу с этим кодом (определяется автоматически), например: http://onpay.ru/dir/index.php | ||
Строка 126: | Строка 126: | ||
**sum** - минимальная сумма платежа за доступ к странице \\ | **sum** - минимальная сумма платежа за доступ к странице \\ | ||
**payed** - сумма платежа (равна или больше sum) \\ | **payed** - сумма платежа (равна или больше sum) \\ | ||
- | **onpay_id** - номер платежа в системе OnPay.ru \\ | + | **onpay_id** - номер платежа в системе Onpay.ru \\ |
**date** - срок годности кода (до какой даты), в секундах (Unix Time Format)\\ | **date** - срок годности кода (до какой даты), в секундах (Unix Time Format)\\ | ||
**ip** - IP-адрес пользователя, создавшего код платежа\\ | **ip** - IP-адрес пользователя, создавшего код платежа\\ | ||
Строка 132: | Строка 132: | ||
/api.php | /api.php | ||
\\ | \\ | ||
- | ====URL API IN для оповещений от OnPay о пришедших платежах==== | + | ====URL API IN для оповещений от Onpay о пришедших платежах==== |
\\ | \\ | ||
<?php | <?php | ||
$period=60*60*24*2; //Время доступа, в секундах (60 секунд * 60 минут * 24 часа * 2 суток = 172800 секунд). Исчисляется от времени поступления оплаты за код доступа. | $period=60*60*24*2; //Время доступа, в секундах (60 секунд * 60 минут * 24 часа * 2 суток = 172800 секунд). Исчисляется от времени поступления оплаты за код доступа. | ||
- | $login='demo'; //Ваше "Имя пользователя" (логин) в системе OnPay.ru | + | $login='demo1'; //Ваше "Имя пользователя" (логин) в системе Onpay.ru |
- | $key='a2su3ig8y'; //Ваш "Секретный пароль для API IN" в системе OnPay.ru | + | $key='a2su3ig8y'; //Ваш "Секретный пароль для API IN" в системе Onpay.ru |
$db_host='localhost'; //Хост сервера базы данных (домен или IP-адрес) | $db_host='localhost'; //Хост сервера базы данных (домен или IP-адрес) | ||
$db_user='root'; //Имя пользователя БД | $db_user='root'; //Имя пользователя БД | ||
Строка 145: | Строка 145: | ||
if(!mysql_connect($db_host, $db_user, $db_pass)) {echo 'Невозможно подключиться к серверу баз данных';exit;} //Подключение к серверу баз данных | if(!mysql_connect($db_host, $db_user, $db_pass)) {echo 'Невозможно подключиться к серверу баз данных';exit;} //Подключение к серверу баз данных | ||
if(!mysql_select_db($db_name)) {echo 'Не получилось выбрать базу данных '.$db_name;exit;} //Выбор базы данных | if(!mysql_select_db($db_name)) {echo 'Не получилось выбрать базу данных '.$db_name;exit;} //Выбор базы данных | ||
- | if($_REQUEST['type']=='check') { //Ответ на запрос check от OnPay (проверка наличия кода в базе данных) | + | if($_REQUEST['type']=='check') { //Ответ на запрос check от Onpay (проверка наличия кода в базе данных) |
$error=0; | $error=0; | ||
$order_amount=$_REQUEST['order_amount']; | $order_amount=$_REQUEST['order_amount']; | ||
Строка 157: | Строка 157: | ||
if($result) { //Если сохранено в базу данных без ошибок | if($result) { //Если сохранено в базу данных без ошибок | ||
if(mysql_num_rows($result)) { //Если в базе данных найдена строка с введенным кодом для данной директории и он не просрочен, то отвечаем ОК | if(mysql_num_rows($result)) { //Если в базе данных найдена строка с введенным кодом для данной директории и он не просрочен, то отвечаем ОК | ||
- | $rezult=answer($_REQUEST['type'],0,$pay_for,$order_amount,$order_currency,'OK'); //Отвечаем серверу OnPay, что все хорошо, можно принимать деньги | + | $rezult=answer($_REQUEST['type'],0,$pay_for,$order_amount,$order_currency,'OK'); //Отвечаем серверу Onpay, что все хорошо, можно принимать деньги |
} else $error=1; | } else $error=1; | ||
} else $error=1; | } else $error=1; | ||
Строка 163: | Строка 163: | ||
$rezult=answer($_REQUEST['type'],2,$pay_for,$order_amount,$order_currency,'Error code pay_for: '.$code); //Сообщаем ошибку | $rezult=answer($_REQUEST['type'],2,$pay_for,$order_amount,$order_currency,'Error code pay_for: '.$code); //Сообщаем ошибку | ||
} | } | ||
- | if($_REQUEST['type']=="pay") { //Ответ на запрос pay от OnPay (прием оплаты за код) | + | if($_REQUEST['type']=="pay") { //Ответ на запрос pay от Onpay (прием оплаты за код) |
$onpay_id=$_REQUEST['onpay_id']; | $onpay_id=$_REQUEST['onpay_id']; | ||
$code=$pay_for=$_REQUEST['pay_for']; | $code=$pay_for=$_REQUEST['pay_for']; | ||
Строка 212: | Строка 212: | ||
} | } | ||
echo $rezult; | echo $rezult; | ||
- | //Функция выдает ответ для сервиса onpay в формате XML на чек запрос | + | //Функция выдает ответ для сервиса Onpay в формате XML на чек запрос |
function answer($type,$code,$pay_for,$order_amount,$order_currency,$text) { | function answer($type,$code,$pay_for,$order_amount,$order_currency,$text) { | ||
global $key; | global $key; | ||
Строка 218: | Строка 218: | ||
return "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<result>\n<code>$code</code>\n<pay_for>$pay_for</pay_for>\n<comment>$text</comment>\n<md5>$md5</md5>\n</result>"; | return "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<result>\n<code>$code</code>\n<pay_for>$pay_for</pay_for>\n<comment>$text</comment>\n<md5>$md5</md5>\n</result>"; | ||
} | } | ||
- | //Функция выдает ответ для сервиса onpay в формате XML на pay запрос | + | //Функция выдает ответ для сервиса Onpay в формате XML на pay запрос |
function answerpay($type,$code,$pay_for,$order_amount,$order_currency,$text,$onpay_id) { | function answerpay($type,$code,$pay_for,$order_amount,$order_currency,$text,$onpay_id) { | ||
global $key; | global $key; | ||
Строка 226: | Строка 226: | ||
?> | ?> | ||
| | ||
- | ====Подключение уведомления по API в кабинете OnPay==== | + | ====Подключение уведомления по API в кабинете Onpay==== |
\\ | \\ | ||
http://secure.onpay.ru/user/login \\ | http://secure.onpay.ru/user/login \\ | ||
- | Логин: demo \\ | + | Логин: demo1 \\ |
Пароль: demodemo \\ | Пароль: demodemo \\ | ||
+ | Внимание! В демо-магазине технически возможно принимать деньги. Но вывести их нельзя. Просьба для коммерческой деятельности зарегистрироваться и использовать реальные учетные записи! |