Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [wolontariat] Implementacja w php - proszę o pomoc
Forum PHP.pl > Inne > Giełda ofert > Poszukuję
Szymekforma5
Ktoś mi powie jak to wrzucic na strone www questionmark.gif? wgl. jak to uruchomić questionmark.gif?
nie wiem, czy dobrze sformuowałem...proszę o jakąś pomoc, podpowiedz.

Kod
<?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

?>


Szymekforma5

Posty: 1
Rejestracja: dzisiaj, 18:55
IceManSpy
Czemu pytasz o to nas, a nie platnosci-online.pl?

Masz wszystko w komentarzach opisane co i jak robi. Ty musisz zaimplementować warunki, kiedy np transakcja się nie powiedzie itd. Do tego formularz, za pomocą których wyślesz potrzebne dane, jak np zwrócony kod przez SMS.
wizu
Jesteś pewny, że sam, nie mająć zielonego pojęcia o PHP chcesz się zabrać za dołączenie tak ważnego i wrażliwego modułu jak płatności?
Radził bym jeszcze raz przemyśleć sprawę i dać to do zrobienia komuś, kto ma choćby podstawową wiedzę na ten temat.
Szymekforma5
Ogólnie ja się tym nie zajmuję, chcę pomóc koledze, na jakimś forum o php zadał pytanie o implementację ...nie zyskał odpowiedzi. Chciałbym uzyskać jakiś kontakt, do osoby która ogarnia to na high levelu, która pokieruje i podpowie.
markonix
To poleć koledze aby założył tu konto i napisał na czym stanął.
Szymekforma5
Witam założyłem już lonto na CBA.pl , mam zainstalowany Xampp na komputerze mam baz edanych wszystko mam i w jaki sposób to wrzucic questionmark.gif
Uriziel01
Jeżeli liczysz że sam zainstalujesz jedynie XAMPPa a ktoś zrobi resztę za Ciebie (czytaj - powie krok po kroku co masz robić) to bardzo mi przykro ale to nie forum tego typu. Przeczytaj jakikolwiek tutorial PHP dla początkujących, to powinno wiele wyjasnić.
Daiquiri
Przenoszę do odpowiedniego działu i dodaję tag [wolontariat]. Niestety wychodzi na to, iż nie masz bladego pojęcia co robić dalej - zatem poszukujesz nie tyle podpowiedzi co wykonania pracy za Ciebie.

Ponadto stosuj odpowiedni BBCode oraz zapoznaj się proszę z tematem: Temat: Jak poprawnie zatytulowac watek
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.