Czy ktoś zna sie na tyle żeby przerobić api z platnosci online na to żeby pasowalo do tego sms shopu
Przyklady api
HomePay
<?php
include 'config/functions/numery_koszta.php';
$config_homepay_usr_id=$id; //TEGO NIE RUSZAJ
$config_homepay=array(); //TEGO NIE RUSZAJ
include 'config/polacz.php';
require 'config/licencja.php';
@include 'config/orderby.php';
switch ($orderby) {
case "ASC":
$zapytanie = mysql_query("SELECT * FROM codes ORDER BY numer ASC"); break;
case "DESC":
$zapytanie = mysql_query("SELECT * FROM codes ORDER BY numer DESC"); break;
default:
$zapytanie = mysql_query("SELECT * FROM codes ORDER BY numer ASC"); break;
}
{
$config_homepay[]=array("acc_id"=>$rekord['idkonta'],"punkty"=>$rekord['punkty'],"nazwa"=>$rekord['nazwa'],"netto"=>$rekord['netto'],"brutto"=>$rekord['brutto'],"numer"=>$rekord['numer'],"tekst"=>$rekord['tresc']); }
$config_homepay_multi=array("acc_ids"=>array
()); $config_homepay_accs=array();
foreach($config_homepay as $k=>$v)
{
$config_homepay_accs[$v['acc_id']]=$k;
$config_homepay_multi['acc_ids'][]=$v['acc_id'];
}
$config_homepay_multi['acc_ids']=urlencode(implode(",",$config_homepay_multi['acc_ids']));
if($_POST&&$_POST['check_code'])
{
$code=$_POST['code'];
if(!preg_match("/^[A-Za-z0-9]{8}$/",$code)) echo '<div class="gz">Zly format kodu - musi byc 8 znakow.</div>'; if($_SESSION['logged_nick']=="" or $_SESSION['logged_nick']=="0")
{
echo '<div class="gz">Zaloguj sie!</div>'; }
else
{
$configacc = $config_homepay_multi['acc_ids'];
$handle=fopen("http://dramo.pl/licencja/homepay.php?usr_id=".$config_homepay_usr_id."&config_acc=".$configacc."&code=".$code."&lic=".$licencja,'r'); if($check[0]=="1")
{
echo '<div class="gz">Gratulacje, <span style="color: orange"><strong>'. $_SESSION['logged_nick']. '</strong></span> - kod jest poprawny!</br>'; echo "Zakupiles ".$config_homepay[$config_homepay_accs[$check[1]]]['nazwa']."</div>"; $nick = $_SESSION['logged_nick'];
$dane2 = mysql_query("SELECT points FROM users WHERE nick='$nick'");
$punktyP = $r['points'];
if ($punktyP == NULL){
$punkty = 0;
$nowepkt = $punkty + $config_homepay[$config_homepay_accs[$check[1]]]['punkty'];
mysql_query("UPDATE users SET points = '$nowepkt' WHERE nick = '$nick'"); }
else
{
$nowepkt = $punktyP + $config_homepay[$config_homepay_accs[$check[1]]]['punkty'];
mysql_query("UPDATE users SET points = '$nowepkt' WHERE nick = '$nick'"); }
}
if($check[0]=="0"){
echo ('<div class="gz">Wprowadziles bledny kod. </br>Jezeli uwazasz ze kod jest prawidlowy skontaktuj sie z Administracja.</div>'); }
elseif($check[0]=="E"){
echo "<div style=\"text-align: center\">Wystapil blad!</div>"; }
elseif($check[0]=="P"){
print("Nieaktywna licencja!"); }
}
}
?>
ProfitSms
<?php
include 'config/config.php';
$config_profitsms=array();
include 'config/functions/numery_koszta.php';
include 'config/polacz.php';
include 'config/polacz.php';
{
$config_profitsms[]=array("acc_id"=>$rekord['numer'],"nazwa"=>$rekord['nazwa'],"punkty"=>$rekord['punkty'],"netto"=>$rekord['netto'],"brutto"=>$rekord['brutto'],"numer"=>$rekord['numer'],"tekst"=>$rekord['tresc']); }
$code = $_POST['code'];
$config_profitsms_multi=array("acc_ids"=>array
()); $config_profitsms_accs=array();
foreach($config_profitsms as $k=>$v)
{
$config_profitsms_accs[$v['acc_id']]=$k;
$config_profitsms_multi['acc_ids'][]=$v['acc_id'];
}
$config_profitsms_multi['acc_ids']=urlencode(implode(",",$config_profitsms_multi['acc_ids'])); if($_POST&&$_POST['check_code'])
{
$code=$_POST['code'];
if(!preg_match("/^[A-Za-z0-9]{8}$/",$code)) echo '<div class="gz">Zly format kodu - musi byc 8 znakow.</div>'; else {
if($_SESSION['logged_nick']=="")
{
echo '<div class="gz">Zaloguj sie!</div>'; }
else
{
include 'config/licencja.php';
$dane2 = mysql_query("SELECT points FROM users WHERE nick='$nick'"); $punktystare = $r['points'];
{
$handle=fopen("http://dramo.pl/licencja/profitsms.php?apiKey=".$id."&code=".$code."&smsNr=".$rekord['numer']."&lic=".$licencja, 'r'); $x++;
$dane2 = mysql_query("SELECT * FROM users WHERE nick='$nick'"); if($check[0]=="1" && $_SESSION['logged_nick']!="")
{
echo '<div class="gz">Gratulacje, <span style="color: orange"><strong>'. $_SESSION['logged_nick']. '</strong></span> - kod jest poprawny!</br>'; echo "Zakupiles ".$rekord['nazwa']."</div>"; $nick = $_SESSION['logged_nick'];
$dane5 = mysql_query("SELECT points FROM users WHERE nick='$nick'"); $punktyP = $r2['points'];
$nowepkt = $punktyP + $rekord['punkty'];
mysql_query("UPDATE users SET points = '$nowepkt' WHERE nick = '$nick'"); }
elseif($check[0]==""){
}
elseif($check[0]=="P"){
exit("Niepoprawna licencja!"); }
}
$dane3 = mysql_query("SELECT * FROM users WHERE nick='$nick'"); $punktynowe = $r2['points'];
if($punktystare == $punktynowe){
echo '<div style="text-align: center">Wprowdzono niepoprawny kod. Skontakuj sie z administratorem jezeli myslisz iz to blad.</div>'; }
}
}
}
?>
A teraz api ze strony platnoscionline
<?php
// odbiór płatności kanałem serwer-serwer
// z serwera Platnosci-Online.pl
if (eregi('176.9.116.201', $_SERVER['REMOTE_ADDR'])) { // odbieraj komunikaty tylko z
// serwera Platnosci-Online.pl
/*
Struktura danych:
$tablica['id'] = $posid; // identyfikator partnera (ID)
$tablica['tr_result'] = $tr_result; // status transakcji: 1 = pozytywna
$tablica['control'] = $control; // ID transakcji od partnera
$tablica['amount'] = $amount; // suma w groszach
$tablica['tr_id'] = 'AX-'.$id_transakcji.'-PL'; // ID transakcji PO
$tablica['checksum'] = $checksum; // Podpis transakcji
*/
// poczatek konfiguracji --------------------------------------------
function oczysc($a){
return $a;
}
$posid = 2490;
$klucz_klienta = 'bc244edd0b335ae527fb119da34cc2ae' ; # klucz transakcyjny
// połaczenie z bazą danych
// Tu wpisz swoje dane do bazy danych
define('HOST_BAZA','localhost'); define('UZYTKOWNIK_BAZA','nazwa_uzytkownika'); define('HASLO_BAZA','haslo_do_bazy_danych'); define('NAZWA_BAZA','nazwa_bazy');
// koniec konfiguracji --------------------------------------------
// brak połączenia z bazą danych
exit; // wychodzimy ze skryptu }
$bkey = pack('H*',$klucz_klienta); // postac binarna klucza transakcyjnego
$tr_result = $_POST['tr_result'];
$id_transakcji = oczysc($_POST['tr_id']);
$checksum = oczysc($_POST['checksum']);
$tt = $posid.'&'.$control.'&'.$amount.'&'.$tr_result.'&'.'AX-'.$id_transakcji.'-PL';
// oblicz sumę kontrolną transakcji
$checksum_control = md5($posid.'&'.$control.'&'.$amount.'&'.$tr_result.'&' . $id_transakcji.'&'.$bkey);
if ($checksum_control == $checksum) {
// suma kontrolna zgadza się
if ($tr_result=='1') {
// transakcja jest potwierdzona
// jako prawidłowa i pozytywna (klient zapłacił)
// wysłanie do nadajnika komunikatu OK
// oblicz sumę kontrolną komunikacji
$checksum_control = md5($posid.'&OK&'.$bkey);
// teraz podpisz odpowiedź
// i wyślij go do serwera PO:
echo "\n".$checksum_control;
// -----------------------------------------------
//
//
// TUTAJ przydziel Kupującemu to, za co zaplacił.
// Punkty, złote monety, dostęp do forum itp...
// czyli wklej fragment kodu w PHP, który
// to zrealizuje.
//
// Ten komentarz możesz usunąć.
//
//
// -----------------------------------------------
}else{
// transakcja jest niepoprawna (np. odrzucona)
// można wysłać Klientowi np. jakąś wiadomość
// lub nic nie robić.
}
}else{
// niepoprawna suma kontrolna (podpis transakcji)
// nic nie rób lub wyślij do siebie mail
// że coś jest nie tak z Twoim skryptem.
}
}else{
// to nie jest serwer PO więc niech sobie idzie dalej :-)
header('Location: <a href="http://www.disney.pl/'%3b%29;" target="_blank">http://www.disney.pl/');</a
> }
?>
Z góry dzięki