<?php
error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
ini_set("display_errors", 1);
$settings = array(
/*
@nazwa: userid
@opis: numer identyfikacyjny partnera nadawany po zarejestrowaniu konta (dostępny po zalogowaniu).
*/
'userid' => '1',
/*
@nazwa: serviceid
@opis: numer identyfikacyjny kanału SKS dostępny w sekcji "Kanały SMS Premium"
*/
'serviceid' => '788',
/*
@nazwa: text
@opis: treść wiadomości, która zostaje zainicjowana przez partnera w panelu. Pamiętaj, że błąd powoduje nierozliczenie płatności!
*/
'text' => 'MSMS.PAKO',
);
$data[] = array("netto" => 0.50,"number" => 7055,"product" => "wojownik");
$data[] = array("netto" => 1.00,"number" => 7136,"product" => "strażak");
/*
Weryfikujemy, czy formularz został wysłany
*/
if (isset($_POST['send']) && isset($_POST['code'])) {
$code = addslashes($_POST['code']);
/*
Weryfikujemy poprawność kodu
*/
if (preg_match("/^[A-Za-z0-9]{8}$/", $code)) {
$a = array();
$b = array();
foreach ($data as $cfg) {
array_push($a, $cfg['number']);
$b[$cfg['number']] = $cfg['product'];
}
/*
Łączymy się z serwerem MicroSMS
*/
$api = @file_get_contents("http://microsms.pl/api/v2/multi.php?userid=" . $settings['userid'] . "&code=" . $code . '&serviceid=' . $settings['serviceid']);
print_r($api);
/*
Jeśli wystąpi problem z połączeniem, skrypt wyświetli błąd.
*/
if (!isset($api)) {
$errormsg = 'Nie można nawiązać połączenia z serwerem płatności.';
} else {
/*
Dekodujemy odpowiedź serwera do formatu json
*/
$api = json_decode($api);
/*
Sprawdzamy czy odpowiedź na pewno jest w formacie json
*/
if (!is_object($api)) {
$errormsg = 'Nie można odczytać informacji o płatności.';
} else if (isset($api->error) && $api->error) {
$errormsg = 'Kod błędu: ' . $api->error->errorCode . ' - ' . $api->error->message;
} else if ($api->connect == FALSE) {
$errormsg = 'Kod błędu: ' . $api->data->errorCode . ' - ' . $api->data->message;
} else if (!isset($b[$api->data->number])) {
$errormsg = 'Przesłany kod jest nieprawidłowy, spróbuj ponownie.';
}
}
if (!isset($errormsg) && isset($api->connect) && $api->connect == TRUE) {
/*
Jeśli kod jest prawidłowy, wydajemy produkt
*/
if ($api->data->status == 1) {
$okmsg = 'Zakupiłeś produkt ' . $b[$api->data->number];
// Tutaj możesz również wykonywać inne operacje
// Np. dodać zapytanie mysql w celu dodania zakupionych pointsów dla danego accountId
} else {
$errormsg = 'Przesłany kod jest nieprawidłowy, spróbuj ponownie.';
}
}
} else {
$errormsg = 'Przesłany kod jest nieprawidłowy, przepisz go ponownie.';
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="pl">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Przykladowy skrypt platnosci SMS</title>
<link href="http://microsms.pl/api/demo/css.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="page">
<div class="center title">Zakup produktu - demo</div>
<br/>
<div class="center">
<table id="table">
<tr class="header">
<td>Cena:</td>
<td>Numer:</td>
<td>Treść:</td>
<td>Produkt:</td>
</tr>
<?php foreach($data as $var) { ?>
<tr class="emp">
<td><?php echo $var['netto']; ?> (<?php echo number_format($var['netto'] * ( 1 + 23 / 100 ), 2); ?> z VAT)</td>
<td><?php echo $var['number']; ?></td>
<td><?php echo $settings['text']; ?></td>
<td><?php echo $var['product']; ?></td>
</tr>
<?php } ?>
</table>
<br/>
<?php if(isset($okmsg)) { ?><div class="msg ok"><?php echo $okmsg; ?></div><?php } ?>
<?php if(isset($errormsg)) { ?><div class="msg error"><?php echo $errormsg; ?></div><?php } ?>
<form method="post" >
<input type="hidden" name="send" value="" />
<input name="code" placeholder="Kod sms" type="text" />
<button class="button" type="submit">Sprawdź kod</button>
</form>
<br/><br/>
Płatności zapewnia firma <a href="http://microsms.pl/">MicroSMS</a>. <br/>
Korzystanie z serwisu jest jednozanczne z akceptacją <a href="">regulaminu serwisu</a>.<br/>
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/> W przypadku problemów z produktem skontaktuj się z administratorem sklepu [email protected]<br/>
<img src="http://microsms.pl/public/cms/img/banner.png">
</div>
</div>
</body>
</html>
czy na microsms potrzeba jakise dane jak NIP czy jak to sie tam zwie?PHP:<?php error_reporting(E_ALL); ini_set('error_reporting', E_ALL); ini_set("display_errors", 1); $settings = array( /* @nazwa: userid @opis: numer identyfikacyjny partnera nadawany po zarejestrowaniu konta (dostępny po zalogowaniu). */ 'userid' => '1', /* @nazwa: serviceid @opis: numer identyfikacyjny kanału SKS dostępny w sekcji "Kanały SMS Premium" */ 'serviceid' => '788', /* @nazwa: text @opis: treść wiadomości, która zostaje zainicjowana przez partnera w panelu. Pamiętaj, że błąd powoduje nierozliczenie płatności! */ 'text' => 'MSMS.PAKO', ); $data[] = array("netto" => 0.50,"number" => 7055,"product" => "wojownik"); $data[] = array("netto" => 1.00,"number" => 7136,"product" => "strażak"); /* Weryfikujemy, czy formularz został wysłany */ if (isset($_POST['send']) && isset($_POST['code'])) { $code = addslashes($_POST['code']); /* Weryfikujemy poprawność kodu */ if (preg_match("/^[A-Za-z0-9]{8}$/", $code)) { $a = array(); $b = array(); foreach ($data as $cfg) { array_push($a, $cfg['number']); $b[$cfg['number']] = $cfg['product']; } /* Łączymy się z serwerem MicroSMS */ $api = @file_get_contents("http://microsms.pl/api/v2/multi.php?userid=" . $settings['userid'] . "&code=" . $code . '&serviceid=' . $settings['serviceid']); print_r($api); /* Jeśli wystąpi problem z połączeniem, skrypt wyświetli błąd. */ if (!isset($api)) { $errormsg = 'Nie można nawiązać połączenia z serwerem płatności.'; } else { /* Dekodujemy odpowiedź serwera do formatu json */ $api = json_decode($api); /* Sprawdzamy czy odpowiedź na pewno jest w formacie json */ if (!is_object($api)) { $errormsg = 'Nie można odczytać informacji o płatności.'; } else if (isset($api->error) && $api->error) { $errormsg = 'Kod błędu: ' . $api->error->errorCode . ' - ' . $api->error->message; } else if ($api->connect == FALSE) { $errormsg = 'Kod błędu: ' . $api->data->errorCode . ' - ' . $api->data->message; } else if (!isset($b[$api->data->number])) { $errormsg = 'Przesłany kod jest nieprawidłowy, spróbuj ponownie.'; } } if (!isset($errormsg) && isset($api->connect) && $api->connect == TRUE) { /* Jeśli kod jest prawidłowy, wydajemy produkt */ if ($api->data->status == 1) { $okmsg = 'Zakupiłeś produkt ' . $b[$api->data->number]; // Tutaj możesz również wykonywać inne operacje // Np. dodać zapytanie mysql w celu dodania zakupionych pointsów dla danego accountId } else { $errormsg = 'Przesłany kod jest nieprawidłowy, spróbuj ponownie.'; } } } else { $errormsg = 'Przesłany kod jest nieprawidłowy, przepisz go ponownie.'; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="pl"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>Przykladowy skrypt platnosci SMS</title> <link href="http://microsms.pl/api/demo/css.css" rel="stylesheet" type="text/css"> </head> <body> <div id="page"> <div class="center title">Zakup produktu - demo</div> <br/> <div class="center"> <table id="table"> <tr class="header"> <td>Cena:</td> <td>Numer:</td> <td>Treść:</td> <td>Produkt:</td> </tr> <?php foreach($data as $var) { ?> <tr class="emp"> <td><?php echo $var['netto']; ?> (<?php echo number_format($var['netto'] * ( 1 + 23 / 100 ), 2); ?> z VAT)</td> <td><?php echo $var['number']; ?></td> <td><?php echo $settings['text']; ?></td> <td><?php echo $var['product']; ?></td> </tr> <?php } ?> </table> <br/> <?php if(isset($okmsg)) { ?><div class="msg ok"><?php echo $okmsg; ?></div><?php } ?> <?php if(isset($errormsg)) { ?><div class="msg error"><?php echo $errormsg; ?></div><?php } ?> <form method="post" > <input type="hidden" name="send" value="" /> <input name="code" placeholder="Kod sms" type="text" /> <button class="button" type="submit">Sprawdź kod</button> </form> <br/><br/> Płatności zapewnia firma <a href="http://microsms.pl/">MicroSMS</a>. <br/> Korzystanie z serwisu jest jednozanczne z akceptacją <a href="">regulaminu serwisu</a>.<br/> 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/> W przypadku problemów z produktem skontaktuj się z administratorem sklepu [email protected]<br/> <img src="http://microsms.pl/public/cms/img/banner.png"> </div> </div> </body> </html>
Zaimplementuj sobie i będzie działać...