problem z dotpay.eu

0

Witam.

Mam problem z dotpayem.
Dokonuje opłaty - wszystko jest ok.

Jednak plik podany w parametrze URLC wywołuje się kilka razy (dotpay go odpala nawet 8 razy w ciągu 5 minut).

W pliku dotpay_add.php (plik URLC) wykonuje polecenie:

if($_POST['t_status'] == '2'){
  mysql_query("UPDATE users SET pkt = pkt + 100 WHERE id_user = '{$_POST['control']}';");
}

Co mam zrobić zeby plik wywoływał się tylko RAZ !??
Opłata słuzy do dodania 100pkt dla danego usera a nie 100 * X ..

Dzięki wielkie za wszelkie podpowiedzi!!

0

Po pierwsze - ciekawe, ze dotpay wykonuje ten plik kilka razy :/

Sprawdzaj status transakcji. Tzn. kazdej transakcji nadajesz jakies unikalne ID prawda? W pierwszym wywolaniu pliku dotpay_add.php ustalasz w bazie danych (tworzysz tabele z lista transakcji) status oplacony czy aktywowany dla danego ID. Przy kazdym wywolaniu skryptu nalezy sprawdzac, czy transakcja zostala juz aktywowana - jezeli tak - pomijasz dalsze wykonanie instrukcji.

0
Bodzio napisał(a)

Witam.

Mam problem z dotpayem.
Dokonuje opłaty - wszystko jest ok.

Jednak plik podany w parametrze URLC wywołuje się kilka razy (dotpay go odpala nawet 8 razy w ciągu 5 minut).

W pliku dotpay_add.php (plik URLC) wykonuje polecenie:

if($_POST['t_status'] == '2'){
  mysql_query("UPDATE users SET pkt = pkt + 100 WHERE id_user = '{$_POST['control']}';");
}

Co mam zrobić zeby plik wywoływał się tylko RAZ !??
Opłata słuzy do dodania 100pkt dla danego usera a nie 100 * X ..

Dzięki wielkie za wszelkie podpowiedzi!!

$_POST['control'] - niefiltrowane dane = zło
Nie masz tam w $_POST jakiegoś kodu transakcji czy czego? Możesz go zapisać w bazie i sprawdzać czy takiego już nie ma.

1 użytkowników online, w tym zalogowanych: 0, gości: 1