Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]integracja z dotpay
Forum PHP.pl > Forum > Przedszkole
row
Witam,

kod wygląda tak

  1. // Sprawdzanie kodu SMS
  2.  
  3. $check = $checkcode; // kod z formularzu
  4. $id = xx; // numer ID zarejestrowanego klienta
  5. $code = "xx"; // identyfikator usług SMS
  6. $type = "c1,sms"; // typ konta: C1 - 8 znakowy kod bezobsługowy
  7. $del = 1; // jeżeli kod ma być skasowany od razu po sprawdzeniu to ustaw warto?ć na 1
  8.  
  9. $handle = fopen("http://dotpay.pl/check_code.php?id=".$id."&code=".$code."&check=".$check."&type=".$type."&del=".$del, 'r');
  10. $status = fgets($handle, 8);
  11. $czas_zycia = fgets($handle, 24);
  12. fclose($handle);
  13. $czas_zycia = rtrim($czas_zycia);
  14.  
  15. if ($status == 0)
  16. {
  17. $stop .= $lang['error_smscode'];
  18. }
  19.  
  20. // Koniec sprawdzania kodu SMS


wpiszę poprawny kod w formularzu, ale i tak otrzymam komunikat, że jest niepoprawny. W dotpay usługa ustawiona, na dowolnym adresie ip.
Wchodząc z poziomu przeglądarki http://dotpay.pl/check_code.php?id="....quot;.$del (uzupełniając odpowiednio zmiennymi) podając w linku kod sms'a, w przeglądarce wyświetla się
1 86400 [tutaj mój identyfikator usługi], gdy wpiszę niepoprawny kod to zwraca 0. To jak mam zrobić ten warunek if w formularzu na stronie, aby działało?


Pozdrawiam i dziękuje
smietek
Przecież w DotPayu dają Ci gotowy skrypt sprawdzania który działa w 100% i masz jeszcze komentarze.

  1. <?php
  2.  
  3. $id = 10; # numer ID zarejestrowanego klienta
  4. $code = "abcd"; # identyfikator usług SMS
  5. $type = "c1"; # typ konta: C1 - 8 znakowy kod bezobsługowy
  6. # typ konta: sms dla sprawdzania SMSow
  7. $page = "main.php"; # nazwa pliku jaki ma sie zaladowac po podaniu poprawnego kodu
  8.  
  9.  
  10. # gdy sprawdzane będą zarówno konta smsowe jak i konta przy płatnościach kartą
  11. # to należy wtedy użyć zapisu:
  12. # $type = "c1,sms";
  13.  
  14. #
  15. # przy sprawdzaniu kilku kont o różnych identyfikatorach należy użyć zapisu:
  16. # $code = "abcd1,abcd2,kody2,kody6";
  17.  
  18. $del=0; # jeżeli kod ma być skasowany od razu po sprawdzeniu to ustaw wartość na 1
  19. ################################################################################
    #
  20. $check = $_POST['check']; # podany kod na stronie gdzie wejście jest płatne i wymagany jest zakupiony kod
  21. if($check == NULL)
  22. exit("Prosze wpisac kod");
  23.  
  24.  
  25. $handle = fopen("http://dotpay.pl/check_code.php?id=".$id."&code=".$code."&check=".$check."&type=".$type."&del=".$del, 'r');
  26. $status = fgets($handle, 8);
  27. $czas_zycia = fgets($handle, 24);
  28. fclose($handle);
  29. $czas_zycia = rtrim($czas_zycia);
  30.  
  31.  
  32.  
  33. if ($status == 0) {print "Kod niepoprawny."; exit;} # gdy kod niepoprawny
  34. else
  35. { # gdy kod poprawny: <----- ZAUWAŻYŁEŚ TO?!
  36. if (!isset($_COOKIE['ActiveCode']))
  37. {
  38. setcookie('ActiveCode',1, time()+$czas_zycia);
  39. }
  40. else
  41. {
  42. setcookie('ActiveCode',0, time()+2, "/");
  43. setcookie('ActiveCode',1, time()+$czas_zycia, "/");
  44. }
  45. header("Location: ".$page); # włączenie strony głównej
  46. }
  47. ?>
row
dałem ten kod PHP, ale gdy wpisuję poprawny kod smsa i tak przenosi na stronę i wyświetla "Kod niepoprawny"
smietek
A tak w ogóle to jaką masz usługę? Bo ten skrypt co podałem działa do "SMS zwracający kod dostępu do usługi" (czyli zwraca kody generowane automatycznie po wysłaniu SMSa) i tylko do tego.
Jeśli masz tą usługę, to albo masz problem z połączeniem z serwerem DotPaya, albo coś źle konfigurujesz...
row
tak taką mam usługę powinno to działać, ustawiona *, aby był dowolny adres ip serwera. Typ usługi: Kod generowany i dopisywany do listy kodow. Sprawdzanie kodow w Dotpay
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.