Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V  < 1 2  
Reply to this topicStart new topic
> Przelewy24.pl - proces i weryfikacja
multiqlti
post 5.07.2019, 09:15:34
Post #21





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 1.07.2019

Ostrzeżenie: (0%)
-----


Dzięki , pobawiłem się i przetestowałem , znam już zasadę działania.
Po rozmowie z P24 okazało się , że dane są przesyłane poprawnie ,natomiast nasze serwery nie chcą ze sobą rozmawiać na etapie weryfikacji.
"Unknown SSL protocol error"

Mamy SSLa , mamy TLS 1.2
P24 nie jest w stanie sprecyzować czemu serwery się nie lubią.
Szukam dalej przyczyn u nas.

dobra , kolejna rzecz , której nie rozumiem ...
docelowo zawartosc formularza bedzie zapisywana w bazie danych na razie prowizorka dla testow.

Wysyłam formularz do P24 , chce zapisać zawartość $_POST do pliku , plik jest pusty , mimo ,że dane się wysyłają ...
  1. if (isset($_POST['submit'])) {
  2. file_put_contents('katalog_zamowien.txt', print_r($_POST, true), FILE_APPEND);
  3. }

wyglada jakby ten kod nie działał poprawnie
jakas podpowiedz ? smile.gif

Ten post edytował multiqlti 5.07.2019, 09:16:24
Go to the top of the page
+Quote Post
nospor
post 5.07.2019, 09:19:34
Post #22





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
Dołączył: 27.12.2004




Nie przyszlo ci do glowy, ze skoro dales WARUNEK IF na zapis do pliku to poprostu ten warunek nie jest spelniony?
Jesli to jest kod, ktory reaguje na zwrotke z P24 to przeciez oni postem nie wysylaja zadnego pola o nazwie SUBMIT


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
multiqlti
post 5.07.2019, 09:28:47
Post #23





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 1.07.2019

Ostrzeżenie: (0%)
-----


ale ja POSTem wysylam formularz wiec POST jest zapelniony danymi ?!
jesli źle myśle to jak zapisać tablicę $_POST która ja wysylam przy kliknieciu ?
przycisk ma name="submit" wiec if powinien spełnić się ?!

Ten post edytował multiqlti 5.07.2019, 09:29:56
Go to the top of the page
+Quote Post
nospor
post 5.07.2019, 09:42:27
Post #24





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
Dołączył: 27.12.2004




Cytat
Wysyłam formularz do P24 , chce zapisać zawartość $_POST do pliku ,

To jeszcze raz od poczatku i troche opisane bardziej dokladnie: co robisz, gdzie wysylasz i czy odbierasz jakas zwrotke?

Bo jak juz mowilem, ze jesli to jest plik, ktory odbiera zwrotke z P24 to logiczne ze POST nie ma submit tam. Jesli wiec to ta sytuacja to wywal ten IF i zobacz co sie zapije do pliku


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
multiqlti
post 5.07.2019, 09:47:45
Post #25





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 1.07.2019

Ostrzeżenie: (0%)
-----


malutki przyklad :
plik z pierwszym formularzem jaki wysylam , nie automatyczny skrypt , tylko form wypelniany przez klienta , natomiast ja zapelniam danymi wczesiej przypisanymi
  1. <?php
  2. $p24_session_id=session_id();
  3. $p24_amount="10";
  4. $p24_currency="PLN";
  5. $p24_description="Płatność testowa systemu przelewy24.pl";
  6. $p24_url_status="https://www.URL.COM/cert/verify.php";
  7.  
  8. if (isset($_POST['submit'])) {
  9. file_put_contents('katalog_zamowien.txt', print_r($_POST, true), FILE_APPEND);
  10. }
  11. ?>

<form method="POST" action="https://sandbox.przelewy24.pl/trnDirect">
<input type="hidden" class="form-control" name="p24_session_id" value="<?php echo session_id() ?>" />
<label for="p24_amount" class="form-control">Kwota 1 PLN</label>
<input type="hidden" class="form-control" name="p24_amount" value= "<?php echo $p24_amount ?>" />
<input type="hidden" class="form-control" name="p24_currency" value= "<?php echo $p24_currency ?>" />
<input type="hidden" class="form-control" name="p24_description" value="<?php echo $p24_description ?>" />
<button type="submit" name="submit">Zapłać z przelewy24.pl</button>
</form>

wysylam $_POSTem na adres : https://sandbox.przelewy24.pl/trnDirect
Myślę , że po przyciśnięciu SUBMIT , if powinien być spełniony i dane z tablicy $_POST zapisać się do pliku poza wysłaniem ich na powyższy adres ?!

Ten post edytował multiqlti 5.07.2019, 09:48:59
Go to the top of the page
+Quote Post
nospor
post 5.07.2019, 09:49:16
Post #26





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
Dołączył: 27.12.2004




action="https://sandbox.przelewy24.pl/trnDirect"
No ale prxzeciez ty slesz tego forma bezposrednio do nich wiec form do twojego skryptu php juz nie zaglada a skoro nei zaglada to i IF sie nie wykonuje...


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
multiqlti
post 5.07.2019, 09:52:43
Post #27





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 1.07.2019

Ostrzeżenie: (0%)
-----


to jak zapisac taki zrzut z formularza do pliku ?
albo sprawic czy zapisac cala tablice ktora wysylam ?
liczylem ze uda sie w 1-2 linijkach tongue.gif

czy da sie wyslac form i na strone i do mojego skryptu ?

abstrahując od potrzeb , czy da się wysłać form na kilka stron jednocześnie ?

Ten post edytował multiqlti 5.07.2019, 09:55:39
Go to the top of the page
+Quote Post
nospor
post 5.07.2019, 09:58:05
Post #28





Grupa: Moderatorzy
Postów: 36 446
Pomógł: 6292
Dołączył: 27.12.2004




Wysylasz form normalnie do siebie do skryptu. A potem w tym skrypcie robisz co chcesz czyli np
- zapisujesz do pliku
- wysylasz dalej do P24 przy pomocy np. CURL


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
multiqlti
post 8.07.2019, 11:09:42
Post #29





Grupa: Zarejestrowani
Postów: 30
Pomógł: 1
Dołączył: 1.07.2019

Ostrzeżenie: (0%)
-----


Kolejne pytanie smile.gif
wysyłam skrypt "do siebie"
zapisuje dane do pliku/bazy danych
robie curl do https://sandbox.przelewy24.pl/trnDirect
ale klient zostaje na mojej stronie a powienien przejsc dalej do strony platnosci p24 (z wyslanymi danymi $_POST w tle)
zastosowałem :
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
ale ta opcja nic nie robi w moim przypadku , przynajmniej nie to czego sie spodziewalem.
  1. $url = 'https://sandbox.przelewy24.pl/trnDirect';
  2. $fields =['p24_merchant_id' => $_POST['p24_merchant_id'],
  3. 'p24_session_id' => $_POST['p24_session_id'],
  4. 'p24_amount' => $_POST['p24_amount'],
  5. 'p24_currency' => $_POST['p24_currency'],
  6. 'p24_sign' => md5($_POST['p24_session_id'].'|'.$_POST['p24_merchant_id'].'|'.$_POST['p24_amount'].'|'.$_POST['p24_currency'].'|'.$_POST['p24__sign'])];
  7.  
  8. if (isset($_POST['submit'])) {
  9. file_put_contents('dane_z_FORM.txt', print_r($_POST, true), FILE_APPEND);
  10. file_put_contents('dane_wyjsciowe_do_p24.txt', print_r($fields, true), FILE_APPEND);
  11.  
  12. //open connection
  13. $ch = curl_init($url);
  14. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  15. curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
  16. curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2);
  17. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
  18. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  19. // execute!
  20. curl_exec($ch);
  21. // close the connection, release resources used
  22. curl_close($ch);
  23. }


jak moge to przerobic zeby po zapisaniu sie danych do pliku/bazy , klient przeszedł dalej na stronę p24 ?
Go to the top of the page
+Quote Post

2 Stron V  < 1 2
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.04.2024 - 10:16