Czy ktoś zna sie na tyle żeby przerobić api z platnosci online na to żeby pasowalo do tego sms shopu
Przyklady api
HomePay
  1. <?php
  2.  
  3. include 'config/functions/numery_koszta.php';
  4.  
  5. $config_homepay_usr_id=$id; //TEGO NIE RUSZAJ
  6. $config_homepay=array(); //TEGO NIE RUSZAJ
  7.  
  8. include 'config/polacz.php';
  9. require 'config/licencja.php';
  10. @include 'config/orderby.php';
  11.  
  12. switch ($orderby) {
  13. case "ASC":
  14. $zapytanie = mysql_query("SELECT * FROM codes ORDER BY numer ASC");
  15. break;
  16. case "DESC":
  17. $zapytanie = mysql_query("SELECT * FROM codes ORDER BY numer DESC");
  18. break;
  19. default:
  20. $zapytanie = mysql_query("SELECT * FROM codes ORDER BY numer ASC");
  21. break;
  22. }
  23.  
  24.  
  25.  
  26. while($rekord = mysql_fetch_array($zapytanie))
  27. {
  28. $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']);
  29. }
  30.  
  31. $config_homepay_multi=array("acc_ids"=>array());
  32. $config_homepay_accs=array();
  33.  
  34.  
  35.  
  36. foreach($config_homepay as $k=>$v)
  37. {
  38. $config_homepay_accs[$v['acc_id']]=$k;
  39. $config_homepay_multi['acc_ids'][]=$v['acc_id'];
  40. }
  41. $config_homepay_multi['acc_ids']=urlencode(implode(",",$config_homepay_multi['acc_ids']));
  42.  
  43. if($_POST&&$_POST['check_code'])
  44. {
  45. $code=$_POST['code'];
  46. if(!preg_match("/^[A-Za-z0-9]{8}$/",$code)) echo '<div class="gz">Zly format kodu - musi byc 8 znakow.</div>';
  47. if($_SESSION['logged_nick']=="" or $_SESSION['logged_nick']=="0")
  48. {
  49. echo '<div class="gz">Zaloguj sie!</div>';
  50. }
  51. else
  52. {
  53. $configacc = $config_homepay_multi['acc_ids'];
  54. $handle=fopen("http://dramo.pl/licencja/homepay.php?usr_id=".$config_homepay_usr_id."&config_acc=".$configacc."&code=".$code."&lic=".$licencja,'r');
  55. $check=fgetcsv($handle,1024);
  56. fclose($handle);
  57. if($check[0]=="1")
  58. {
  59. echo '<div class="gz">Gratulacje, <span style="color: orange"><strong>'. $_SESSION['logged_nick']. '</strong></span> - kod jest poprawny!</br>';
  60. echo "Zakupiles ".$config_homepay[$config_homepay_accs[$check[1]]]['nazwa']."</div>";
  61. $nick = $_SESSION['logged_nick'];
  62.  
  63. $dane2 = mysql_query("SELECT points FROM users WHERE nick='$nick'");
  64. $r = mysql_fetch_array($dane2);
  65.  
  66. $punktyP = $r['points'];
  67.  
  68. if ($punktyP == NULL){
  69. $punkty = 0;
  70. $nowepkt = $punkty + $config_homepay[$config_homepay_accs[$check[1]]]['punkty'];
  71. mysql_query("UPDATE users SET points = '$nowepkt' WHERE nick = '$nick'");
  72. }
  73. else
  74. {
  75. $nowepkt = $punktyP + $config_homepay[$config_homepay_accs[$check[1]]]['punkty'];
  76. mysql_query("UPDATE users SET points = '$nowepkt' WHERE nick = '$nick'");
  77. }
  78. }
  79. if($check[0]=="0"){
  80. echo ('<div class="gz">Wprowadziles bledny kod. </br>Jezeli uwazasz ze kod jest prawidlowy skontaktuj sie z Administracja.</div>');
  81. }
  82. elseif($check[0]=="E"){
  83. echo "<div style=\"text-align: center\">Wystapil blad!</div>";
  84. }
  85. elseif($check[0]=="P"){
  86. print("Nieaktywna licencja!");
  87. }
  88. }
  89. }
  90. mysql_close($connection);
  91. ?>


ProfitSms
  1. <?php
  2.  
  3.  
  4. include 'config/config.php';
  5.  
  6. $config_profitsms=array();
  7.  
  8.  
  9. include 'config/functions/numery_koszta.php';
  10.  
  11. include 'config/polacz.php';
  12. include 'config/polacz.php';
  13.  
  14. $zapytanie = mysql_query("SELECT * FROM codes");
  15. while($rekord = mysql_fetch_array($zapytanie))
  16. {
  17. $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']);
  18. }
  19.  
  20. $code = $_POST['code'];
  21.  
  22. $config_profitsms_multi=array("acc_ids"=>array());
  23. $config_profitsms_accs=array();
  24.  
  25. foreach($config_profitsms as $k=>$v)
  26. {
  27. $config_profitsms_accs[$v['acc_id']]=$k;
  28. $config_profitsms_multi['acc_ids'][]=$v['acc_id'];
  29. }
  30. $config_profitsms_multi['acc_ids']=urlencode(implode(",",$config_profitsms_multi['acc_ids']));
  31. if($_POST&&$_POST['check_code'])
  32. {
  33. $code=$_POST['code'];
  34. if(!preg_match("/^[A-Za-z0-9]{8}$/",$code)) echo '<div class="gz">Zly format kodu - musi byc 8 znakow.</div>';
  35. else {
  36. if($_SESSION['logged_nick']=="")
  37. {
  38. echo '<div class="gz">Zaloguj sie!</div>';
  39. }
  40. else
  41. {
  42. include 'config/licencja.php';
  43. $zapytanie = mysql_query("SELECT * FROM codes");
  44. $dane2 = mysql_query("SELECT points FROM users WHERE nick='$nick'");
  45. $r = mysql_fetch_array($dane2);
  46. $punktystare = $r['points'];
  47. while($rekord = mysql_fetch_array($zapytanie))
  48. {
  49. $handle=fopen("http://dramo.pl/licencja/profitsms.php?apiKey=".$id."&code=".$code."&smsNr=".$rekord['numer']."&lic=".$licencja, 'r');
  50. $check=fgetcsv($handle,1024);
  51. fclose($handle);
  52. $x++;
  53.  
  54. $dane2 = mysql_query("SELECT * FROM users WHERE nick='$nick'");
  55. if($check[0]=="1" && $_SESSION['logged_nick']!="")
  56. {
  57. echo '<div class="gz">Gratulacje, <span style="color: orange"><strong>'. $_SESSION['logged_nick']. '</strong></span> - kod jest poprawny!</br>';
  58. echo "Zakupiles ".$rekord['nazwa']."</div>";
  59. $nick = $_SESSION['logged_nick'];
  60. $dane5 = mysql_query("SELECT points FROM users WHERE nick='$nick'");
  61. $r2 = mysql_fetch_array($dane5);
  62. $punktyP = $r2['points'];
  63. $nowepkt = $punktyP + $rekord['punkty'];
  64. mysql_query("UPDATE users SET points = '$nowepkt' WHERE nick = '$nick'");
  65. }
  66. elseif($check[0]==""){
  67. }
  68. elseif($check[0]=="P"){
  69. exit("Niepoprawna licencja!");
  70. }
  71. }
  72. $dane3 = mysql_query("SELECT * FROM users WHERE nick='$nick'");
  73. $r2 = mysql_fetch_array($dane3);
  74. $punktynowe = $r2['points'];
  75. if($punktystare == $punktynowe){
  76. echo '<div style="text-align: center">Wprowdzono niepoprawny kod. Skontakuj sie z administratorem jezeli myslisz iz to blad.</div>';
  77. }
  78. }
  79. }
  80. }
  81. ?>


A teraz api ze strony platnoscionline
  1. <?php
  2.  
  3. // odbiór płatności kanałem serwer-serwer
  4. // z serwera Platnosci-Online.pl
  5.  
  6. if (eregi('176.9.116.201', $_SERVER['REMOTE_ADDR'])) {
  7. // odbieraj komunikaty tylko z
  8. // serwera Platnosci-Online.pl
  9.  
  10. /*
  11. Struktura danych:
  12. $tablica['id'] = $posid; // identyfikator partnera (ID)
  13. $tablica['tr_result'] = $tr_result; // status transakcji: 1 = pozytywna
  14. $tablica['control'] = $control; // ID transakcji od partnera
  15. $tablica['amount'] = $amount; // suma w groszach
  16. $tablica['tr_id'] = 'AX-'.$id_transakcji.'-PL'; // ID transakcji PO
  17. $tablica['checksum'] = $checksum; // Podpis transakcji
  18. */
  19.  
  20. // poczatek konfiguracji --------------------------------------------
  21.  
  22. function oczysc($a){
  23. return $a;
  24. }
  25.  
  26. $posid = 2490;
  27. $klucz_klienta = 'bc244edd0b335ae527fb119da34cc2ae' ; # klucz transakcyjny
  28.  
  29.  
  30. // połaczenie z bazą danych
  31. // Tu wpisz swoje dane do bazy danych
  32.  
  33. define('HOST_BAZA','localhost');
  34. define('UZYTKOWNIK_BAZA','nazwa_uzytkownika');
  35. define('HASLO_BAZA','haslo_do_bazy_danych');
  36. define('NAZWA_BAZA','nazwa_bazy');
  37.  
  38. // koniec konfiguracji --------------------------------------------
  39.  
  40. if(@mysql_connect(HOST_BAZA,UZYTKOWNIK_BAZA,HASLO_BAZA)!=TRUE or @mysql_select_db(NAZWA_BAZA)!=TRUE) {
  41. // brak połączenia z bazą danych
  42. exit; // wychodzimy ze skryptu
  43. }
  44.  
  45. $bkey = pack('H*',$klucz_klienta); // postac binarna klucza transakcyjnego
  46. $control = urlencode($_POST['control']);
  47. $amount = urlencode($_POST['amount']);
  48.  
  49. $tr_result = $_POST['tr_result'];
  50.  
  51. $id_transakcji = oczysc($_POST['tr_id']);
  52.  
  53. $checksum = oczysc($_POST['checksum']);
  54. $tt = $posid.'&'.$control.'&'.$amount.'&'.$tr_result.'&'.'AX-'.$id_transakcji.'-PL';
  55.  
  56. // oblicz sumę kontrolną transakcji
  57. $checksum_control = md5($posid.'&'.$control.'&'.$amount.'&'.$tr_result.'&' . $id_transakcji.'&'.$bkey);
  58.  
  59. if ($checksum_control == $checksum) {
  60. // suma kontrolna zgadza się
  61. if ($tr_result=='1') {
  62. // transakcja jest potwierdzona
  63. // jako prawidłowa i pozytywna (klient zapłacił)
  64.  
  65. // wysłanie do nadajnika komunikatu OK
  66. echo 'OK';
  67.  
  68. // oblicz sumę kontrolną komunikacji
  69. $checksum_control = md5($posid.'&OK&'.$bkey);
  70.  
  71. // teraz podpisz odpowiedź
  72. // i wyślij go do serwera PO:
  73. echo "\n".$checksum_control;
  74.  
  75. // -----------------------------------------------
  76. //
  77. //
  78. // TUTAJ przydziel Kupującemu to, za co zaplacił.
  79. // Punkty, złote monety, dostęp do forum itp...
  80. // czyli wklej fragment kodu w PHP, który
  81. // to zrealizuje.
  82. //
  83. // Ten komentarz możesz usunąć.
  84. //
  85. //
  86. // -----------------------------------------------
  87.  
  88.  
  89. }else{
  90. // transakcja jest niepoprawna (np. odrzucona)
  91. // można wysłać Klientowi np. jakąś wiadomość
  92. // lub nic nie robić.
  93. }
  94. }else{
  95. // niepoprawna suma kontrolna (podpis transakcji)
  96. // nic nie rób lub wyślij do siebie mail
  97. // że coś jest nie tak z Twoim skryptem.
  98. }
  99. }else{
  100. // to nie jest serwer PO więc niech sobie idzie dalej :-)
  101. header('Location: <a href="http://www.disney.pl/&#39%3b%29;" target="_blank">http://www.disney.pl/');</a>
  102. }
  103. ?>


Z góry dzięki