Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Implementacja w PHP Pomoc !
Forum PHP.pl > Forum > PHP
Szymekforma5
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

?>
Prym
witaj, wybacz ale nie załapałem z czym masz problem w powyższym kodzie?
Szymekforma5
jak to uruchomić poprostu questionmark.gif
phpion
Założyłeś już taki wątek więc w nim kontynuuj. Ten zamykam.
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.