Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Wysyłanie kodu i pola na email API MicroSMS
Forum PHP.pl > Forum > Przedszkole
pp108
Witam
Potrzebuję do skryptu wykorzystującego API MicroSMS dodać wysyłanie wpisanego kodu oraz 1 dodatkowego pola (litery i cyfry) na adres email.
Skrypt - http://microsms.pl/files/examples/demo/2/
Kod skryptu:
  1. <?php
  2.  
  3.  
  4. ini_set('error_reporting', E_ALL);
  5. ini_set("display_errors", 1);
  6.  
  7. $settings = array(
  8. /*
  9.   @nazwa: userid
  10.   @opis: numer identyfikacyjny partnera nadawany po zarejestrowaniu konta (dostępny po zalogowaniu).
  11.   */
  12. 'userid' => '1',
  13. /*
  14.   @nazwa: serviceid
  15.   @opis: numer identyfikacyjny kanału SKS dostępny w sekcji "Kanały SMS Premium"
  16.   */
  17. 'serviceid' => '788',
  18. /*
  19.   @nazwa: text
  20.   @opis: treść wiadomości, która zostaje zainicjowana przez partnera w panelu. Pamiętaj, że błąd powoduje nierozliczenie płatności!
  21.   */
  22. 'text' => 'MSMS.PAKO',
  23. );
  24.  
  25. $data[] = array("netto" => 0.50,"number" => 7055,"product" => "wojownik");
  26. $data[] = array("netto" => 1.00,"number" => 7136,"product" => "strażak");
  27.  
  28. /*
  29.   Weryfikujemy, czy formularz został wysłany
  30.   */
  31. if (isset($_POST['send']) && isset($_POST['code'])) {
  32.  
  33. $code = addslashes($_POST['code']);
  34.  
  35. /*
  36.   Weryfikujemy poprawność kodu
  37.   */
  38. if (preg_match("/^[A-Za-z0-9]{8}$/", $code)) {
  39.  
  40. $a = array();
  41. $b = array();
  42.  
  43. foreach ($data as $cfg) {
  44. array_push($a, $cfg['number']);
  45. $b[$cfg['number']] = $cfg['product'];
  46. }
  47.  
  48. /*
  49.   Łączymy się z serwerem MicroSMS
  50.   */
  51. $api = @file_get_contents("http://microsms.pl/api/v2/multi.php?userid=" . $settings['userid'] . "&code=" . $code . '&serviceid=' . $settings['serviceid']);
  52.  
  53. print_r($api);
  54. /*
  55.   Jeśli wystąpi problem z połączeniem, skrypt wyświetli błąd.
  56.   */
  57. if (!isset($api)) {
  58. $errormsg = 'Nie można nawiązać połączenia z serwerem płatności.';
  59. } else {
  60. /*
  61.   Dekodujemy odpowiedź serwera do formatu json
  62.   */
  63. $api = json_decode($api);
  64.  
  65. /*
  66.   Sprawdzamy czy odpowiedź na pewno jest w formacie json
  67.   */
  68. if (!is_object($api)) {
  69. $errormsg = 'Nie można odczytać informacji o płatności.';
  70. } else if (isset($api->error) && $api->error) {
  71. $errormsg = 'Kod błędu: ' . $api->error->errorCode . ' - ' . $api->error->message;
  72. } else if ($api->connect == FALSE) {
  73. $errormsg = 'Kod błędu: ' . $api->data->errorCode . ' - ' . $api->data->message;
  74. } else if (!isset($b[$api->data->number])) {
  75. $errormsg = 'Przesłany kod jest nieprawidłowy, spróbuj ponownie.';
  76. }
  77. }
  78.  
  79. if (!isset($errormsg) && isset($api->connect) && $api->connect == TRUE) {
  80. /*
  81.   Jeśli kod jest prawidłowy, wydajemy produkt
  82.   */
  83. if ($api->data->status == 1) {
  84. $okmsg = 'Zakupiłeś produkt ' . $b[$api->data->number];
  85.  
  86. // Tutaj możesz również wykonywać inne operacje
  87. // Np. dodać zapytanie mysql, wysłać maila itp.
  88.  
  89. } else {
  90. $errormsg = 'Przesłany kod jest nieprawidłowy, spróbuj ponownie.';
  91. }
  92. }
  93.  
  94. } else {
  95. $errormsg = 'Przesłany kod jest nieprawidłowy, przepisz go ponownie.';
  96. }
  97. }
  98.  
  99. ?>
  100.  
  101.  
  102. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  103. <html xmlns="http://www.w3.org/1999/xhtml" lang="pl">
  104. <head>
  105. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  106. <title>Przykladowy skrypt platnosci SMS</title>
  107. <link href="http://microsms.pl/api/demo/css.css" rel="stylesheet" type="text/css">
  108. </head>
  109. <body>
  110. <div id="page">
  111. <div class="center title">Zakup produktu - demo</div>
  112. <br/>
  113. <div class="center">
  114.  
  115. <table id="table">
  116. <tr class="header">
  117. <td>Cena:</td>
  118. <td>Numer:</td>
  119. <td>Treść:</td>
  120. <td>Produkt:</td>
  121. </tr>
  122. <?php foreach($data as $var) { ?>
  123. <tr class="emp">
  124. <td><?php echo $var['netto']; ?> (<?php echo number_format($var['netto'] * ( 1 + 23 / 100 ), 2); ?> z VAT)</td>
  125. <td><?php echo $var['number']; ?></td>
  126. <td><?php echo $settings['text']; ?></td>
  127. <td><?php echo $var['product']; ?></td>
  128. </tr>
  129. <?php } ?>
  130. </table>
  131. <br/>
  132.  
  133. <?php if(isset($okmsg)) { ?><div class="msg ok"><?php echo $okmsg; ?></div><?php } ?>
  134. <?php if(isset($errormsg)) { ?><div class="msg error"><?php echo $errormsg; ?></div><?php } ?>
  135.  
  136. <form method="post" >
  137. <input type="hidden" name="send" value="" />
  138. <input name="code" placeholder="Kod sms" type="text" />
  139. <button class="button" type="submit">Sprawdź kod</button>
  140. </form>
  141. <br/><br/>
  142. Płatności zapewnia firma <a href="http://microsms.pl/">MicroSMS</a>. <br/>
  143. Korzystanie z serwisu jest jednozanczne z akceptacją <a href="http://microsms.pl/partner/documents/">regulaminów</a>.<br/>
  144. Jeśli nie dostałeś kodu zwrotnego w ciągu 30 minut skorzystaj z <a href="http://microsms.pl/customer/complaint/">formularza reklamacyjnego</a><br/><br/>
  145. <img src="http://microsms.pl/public/cms/img/banner.png">
  146. </div>
  147. </div>
  148. </body>
  149. </html>

Z góry dzięki.
goartur
Odpowiedz
pp108
Cytat(goartur @ 4.02.2016, 14:33:27 ) *

Taak, bo każdy zna PHP
nospor
To, ze ci dana odpowiedz nie odpowiada, nie znaczy ze to spam wiec daruj sobie raportowanie tego jako spam. Bardziej na spam mi pasuje Twoj raport tongue.gif
pp108
Hmm, kiedyś gdzieś czytałem, że....
Cytat
Jeżeli nie znasz odpowiedzi, nie pisz nic. Po prostu czekaj.

Także nie rozumiem co miał wnieść jego post
nospor
Podal ci odpowiedz. Nie wiedzial jednak, ze jej nie zrozumiesz.
com
poco sie bierzesz za coś na czym sie nie znasz?
kapslokk
Napisałeś w dziale przedszkole, więc pomógł Ci znaleźć rozwiązanie. Jak nie znasz php i nie chcesz się go uczyć to po prostu napisz w dziale z ofertami, na pewno znajdzie się ktoś, kto niedrogo to dla Ciebie zrobi.
pp108
Cytat(com @ 4.02.2016, 15:00:06 ) *
poco sie bierzesz za coś na czym sie nie znasz?


Boponieważgdyż:
- potrzebuję tego,
- nie znam się na tym, dlatego proszę o pomoc thumbsdownsmileyanim.gif

Cytat(kapslokk @ 4.02.2016, 15:00:14 ) *
Napisałeś w dziale przedszkole, więc pomógł Ci znaleźć rozwiązanie. Jak nie znasz php i nie chcesz się go uczyć to po prostu napisz w dziale z ofertami, na pewno znajdzie się ktoś, kto niedrogo to dla Ciebie zrobi.


Napisałem w dziale przedszkole, bo taki formularz dla kogoś kto się zna to 2 min roboty - 1 minuta pisania i 1 minuta naśmiewania się jaki to on gupi, że tego nie umi.

Dziękuję wszystkim za pomocne odpowiedzi, temat można uznać za zamknięty.
com
zrobienie za kogoś czegoś kosztuje i jest od tego dział zlecę. Jeśli szukasz pomocy to ją dostajesz, ale nie możesz wymagać żeby ktoś swój cenny czas i wiedzę będzie poświęcał bo masz takie widzimisię, chcesz się czegoś nauczyć to próbujesz sam, a my próbujemy nakierować, jak nie chcesz to zlecasz i każdy szczęśliwy smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.