levip
New Member
- Joined
- Apr 4, 2019
- Messages
- 15
- Reaction score
- 4
Hello,
I try to make microsms code payment. I dont know what is wrong :/. This code dont add premium points to database. If someone have idea how to fix it please help me.
Cheers,
levip
I try to make microsms code payment. I dont know what is wrong :/. This code dont add premium points to database. If someone have idea how to fix it please help me.
Cheers,
levip
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' => '****',
/*
@nazwa: serviceid
@opis: numer identyfikacyjny kanału SKS dostępny w sekcji "Kanały SMS Premium"
*/
'serviceid' => '****',
/*
@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.[B]*[/B]',
);
$data[] = array("netto" => 0.50,"number" => 71480,"product" => "50 premium points");
$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];
$mysqli = new mysqli("localhost", "[B][B]", "[/B][/B]", "****");
/* check connection */
if ($mysqli->connect_errno) {
printf("Connect failed: %s\n", $mysqli->connect_error);
exit();
}
/* Create table doesn't return a resultset */
if ($mysqli->query("UPDATE accounts SET premium_points = 'premium_points' + '20' WHERE id = 'id_login'") === TRUE) {
printf("Dodano punkty premium do Twojego konta!\n");
}
$mysqli->close();
} else {
$errormsg = 'Przesłany kod jest nieprawidłowy, spróbuj ponownie.';
}
}
} else {
$errormsg = 'Przesłany kod jest nieprawidłowy, przepisz go ponownie.';
}
}
?>
Attachments
-
otland.jpg82.3 KB · Views: 44 · VirusTotal