Инструменты пользователя

Инструменты сайта


closed-paid-sample

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Both sides previous revision Предыдущая версия
Следущая версия
Предыдущая версия
closed-paid-sample [2011/09/21 09:24]
admin
closed-paid-sample [2023/02/07 08:47] (текущий)
support
Строка 1: Строка 1:
 ====Пример автоматической организации платного доступа к закрытым разделам сайта==== ====Пример автоматической организации платного доступа к закрытым разделам сайта====
 +\\
 +**!!! версия под API 2.0 (последняя) доступна здесь:​\\
 +https://​onpaysolutions.ru/​pages/​onpay_class.html**\\
 \\ \\
 Под закрытым разделом сайта подразумевается часть страницы,​ доступная только после ввода специального пароля. На ней можно размещать любую информацию,​ включая html и php скрипты,​ видео, секретные ссылки на файлы с паролем в своем названиии (например,​ book34dFs.zip).\\ Под закрытым разделом сайта подразумевается часть страницы,​ доступная только после ввода специального пароля. На ней можно размещать любую информацию,​ включая html и php скрипты,​ видео, секретные ссылки на файлы с паролем в своем названиии (например,​ book34dFs.zip).\\
Строка 14: Строка 17:
   $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='​demo1';​ //Ваше "​Имя пользователя"​ (логин) в системе ​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: Строка 129:
 **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: Строка 135:
 /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='​demo1';​ //Ваше "​Имя пользователя"​ (логин) в системе ​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: Строка 148:
   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: Строка 160:
   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: Строка 166:
   $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: Строка 215:
   }   }
   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: Строка 221:
   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: Строка 229:
   ?>   ?>
   ​   ​
-====Подключение уведомления по API в кабинете Onpay==== 
-\\ 
-http://​secure.onpay.ru/​user/​login \\ 
-Логин: demo1 \\ 
-Пароль:​ demodemo \\ 
- 
closed-paid-sample.1316597085.txt.gz · Последние изменения: 2011/09/21 09:24 (внешнее изменение)