Witam ! Mam mały problem ponieważ nie umiem wstawićimplementacji w php.
może mi ktoś od podstaw krok po kroku wytłumaczyć jak wrzucić tą implementacje żęby wszystko grało ?
To jest ta implementacja -
<?php
// Bramka do komunikacji z serwisem platnosci-online.pl
// przy wykorzystaniu uslugi Bramka SMS
//
// zadanie: ODBIÓR i weryfikacja danych z serwisu PO oraz odpowiedź
//
// KONFIGURACJA:
// Dane znajdziesz w panelu pod adresem:
// https://platnosci-online.pl/dane_osobowe.html ("Ustawienia konta" > "dane osobowe/firmy")
// tu wpisz swój numer partnera.
$pos_id = 1 ;
// tu wpisz Twój 32-znakowy klucz do podpisywania transakcji.
$klucz_transakcyjny = 'efba873efba873efba873efba873' ;
// uchwyt do bazy danych. Ustaw poprawne dane konfiguracyjne
define('HOST_BAZA','nazwa_serwera_MySQL');
define('UZYTKOWNIK_BAZA','nazwa_uzytkownika');
define('HASLO_BAZA','haslo_do_bazy_danych');
define('NAZWA_BAZA','nazwa_bazy_danych');
if(@mysql_connect(HOST_BAZA,UZYTKOWNIK_BAZA,HASLO_BAZA)!=TRUE or @mysql_select_db(NAZWA_BAZA)!=TRUE)
{
// błąd połączenia z bazą danych
exit;
}
// KONIEC KONFIGURACJI /////////////////////////////////////////////////////////////////////
$klucz_klienta = pack('H*',$klucz_transakcyjny);
$tablica = Array();
if (count($_POST)>0) {
$tablica = $_POST;
}else{
$tablica = $_GET;
}
$posid = intval(urlencode($tablica['posid'])); // ID Partnera
$sms_code = urlencode($tablica['sms_code']); // kod SMS, który otrzymał Klient (do ew. reklamacji)
$sms_mxcount = intval(urlencode($tablica['sms_count'])); // maksymalna liczba SMS zwrotnych
$suffix = urldecode($tablica['sufix']); // tresc przeslana przez Klienta
$checksum = urlencode($tablica['checksum']); // suma kontrolna
// numer_telefonu nadawcy wiadomości
// nie podlega weryfikacji sumą kontrolną
$numer_telefonu = urlencode($tablica['numer']);
// oblicz sumę kontrolną transakcji
$checksum_test = md5($pos_id.'&'.$sms_code.'&'.$sms_mxcount.'&'.$suffix.'&'.$klucz_klienta);
if ($checksum_test==$checksum) {
// suma transakcji jest prawidłowa
echo 'OK'; // wysłanie do nadajnika komunikatu OK
// podpisz komunikat
// oblicz sumę kontrolną komunikacji
$checksum_control = md5($pos_id.'&OK&'.$klucz_klienta);
echo "\n".$checksum_control;
// Dla usług rozszerzonych należy zmienną $suffix rozbić na 2 parametry
// Rozbudowanie bramki o możliwość
// wysyłania np. "MPA.PISMO.newsweek 12"
$usluga_arr = explode('.',$suffix);
$suffix = $usluga_arr[0];
// wyodrębnienie z podanego przykładu stringu "newsweek 12"
$wiadomosc_dodatkowa = $usluga_arr[1];
// zapisz subskrypcję do bazy danych (wersja podstawowa)
$sql_ins = mysql_query(
"INSERT INTO bramka_sms (sms_code, mx_cnt, cnt, sufix)
VALUES ('".$sms_code."', '".$sms_mxcount."', 0, '".$suffix."') ; ");
//////////////////////////////////////////////////
// wyślij wiadomosc do bramki
// pokazano 2 przyklady - dla sufiksu ABC oraz DEF
if (strtoupper($suffix)=='ABC') {
$sms_message = 'Tresc wiadomosci nr 1 do wyslania przez bramke SMS';
}
if (strtoupper($suffix)=='DEF') {
$sms_message = 'Tresc wiadomosci nr 2 do wyslania przez bramke SMS';
}
// oblicz sumę kontrolną transakcji
$checksum = md5($pos_id.'&'.$suffix.'&'.$sms_message.'&'.$sms_code.'&'.$klucz_klienta);
// wyślij wiadomosc do bramki
$tablica = Array(
'posid' => $pos_id,
'sms_sufix' => $suffix,
'sms_message' => $sms_message,
'sms_code' => $sms_code,
'checksum' => $checksum
);
$URLC = 'https://platnosci-online.pl/sms_partner_receiver.php';
$opch = curl_init();
curl_setopt ($opch, CURLOPT_URL, $URLC);
curl_setopt ($opch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt ($opch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt ($opch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($opch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($opch, CURLOPT_TIMEOUT, 100);
curl_setopt ($opch, CURLOPT_POST, 1);
curl_setopt ($opch, CURLOPT_POSTFIELDS, $tablica);
$wynik = curl_exec ($opch);
$dane = explode("\n", $wynik);
if ($dane[0]=='OK') {
// oblicz sumę kontrolną transakcji
$test_checksum = md5($pos_id.'&OK&'.$klucz_klienta);
if ($dane[1]==$test_checksum) {
// zapisz informację o wyslanej wiadomosci
// do bazy danych
$sql_ins = mysql_query(
"UPDATE bramka_sms
SET cnt = cnt+1
WHERE sufix = '".$suffix."' AND sms_code = '".$sms_code."' ; " );
}else{
// blad sumy kontrolnej
// nic nie rób
}
}else{
// wynik nieprawidłowy
// nic nie rób
}
}else{
// suma transakcji jest nieprawidłowa
// nic nie rób
}
# koniec skryptu
?>