Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Skrypt z dotpay - Problem.
Forum PHP.pl > Forum > Przedszkole
vifon
Witam. Pobrałem skrypt z dotpay.pl mam aktywowane konto i uslugi itp. wypełniłem poprawnie skrypt i przy wpisaniu kodu do formularza mam taki błąd ( chyba brakuje czegoś na tym serwerze www ) serwer www mam z proserwer..

Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when safe_mode is enabled or an open_basedir is set in /home/p93798/public_html/proba/dotpay/sprawdz.php on line 36

Kod skryptu:

  1. <?php
  2.  
  3. $id = x; # numer ID zarejestrowanego klienta
  4. $code = "x"; # identyfikator usług SMS
  5. $type = "sms"; # typ konta: C1 - 8 znakowy kod bezobsługowy
  6. # typ konta: sms dla sprawdzania SMSow
  7. $page = "main.php"; # strona ktora ma sie otworzyc po podaniu poprawnego kodu
  8. #
  9. # gdy sprawdzane będą zarówno konta smsowe jak i konta przy płatnościach kartą
  10. # to należy wtedy użyć zapisu:
  11. # $type = "c1,sms";
  12. #
  13. #
  14. # przy sprawdzaniu kilku kont o różnych identyfikatorach należy użyć zapisu:
  15. # $code = "abcd1,abcd2,kody2,kody6";
  16. # $check = "xxxxxxxx"; # podany kod na stronie gdzie wejście jest płatne i wymagany jest zakupiony kod
  17. $check = $_POST['check'];# podany kod na stronie gdzie wejście jest płatne i wymagany jest zakupiony kod
  18.  
  19. $del=1; # jezeli kod ma byc jednorazowy to ustaw wartosc na 1;
  20.  
  21.  
  22. ################################################################################
    #############################################
  23. if($check == NULL)
  24. exit("Prosze wpisac kod");
  25.  
  26. $array = array();
  27. $array['check']= $check;
  28. $array['code'] = $code;
  29. $array['id'] = $id;
  30. $array['type'] = $type;
  31. $array['del'] = $del;
  32. $ch = curl_init ();
  33. curl_setopt ($ch, CURLOPT_URL, "https://ssl.dotpay.pl/check_code.php");
  34. curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  35. curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 2);
  36. curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
  37. curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
  38. curl_setopt ($ch, CURLOPT_TIMEOUT, 100);
  39. curl_setopt ($ch, CURLOPT_POST, 1);
  40. curl_setopt ($ch, CURLOPT_POSTFIELDS, $array);
  41. $recv = curl_exec ($ch);
  42. curl_close ($ch);
  43.  
  44. $dane = explode("\n", $recv);
  45. $status = $dane[0];
  46. $czas_zycia = $dane[1];
  47.  
  48. if ($status == 0) {print "Kod niepoprawny."; exit;} # gdy kod niepoprawny
  49. else
  50. { # gdy kod poprawny:
  51. if (!isset($_COOKIE['ActiveCode']))
  52. {
  53. setcookie('ActiveCode',1, time()+$czas_zycia);
  54. }
  55. else
  56. {
  57. setcookie('ActiveCode',0, time()+2, "/");
  58. setcookie('ActiveCode',1, time()+$czas_zycia, "/");
  59. }
  60. header("Location: ".$page); # włączenie strony głównej
  61. }
  62. ?>
erix
Przecież jest jak byk napisane, co nie tak:
Cytat
Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when safe_mode is enabled or an open_basedir is set in /home/p93798/public_html/proba/dotpay/sprawdz.php on line 36


Albo zmień serwer, albo spróbuj tę flagę wyłączyć. Jest jeszcze opcja, żeby przez zwykłe file_get_contents i stream_context_create to zrobić.

Nie, nie ma innego wyjścia. safe mode może być wyłączony tylko przez administratora.
xavierek
Napisałem sobie coś takiego

  1. <?php
  2.  
  3. class Dotpay {
  4.  
  5. function __construct() {
  6.  
  7. }
  8.  
  9. function checkCode($check, $id, $code, $type, $del){
  10. $handle = fopen("http://dotpay.pl/check_code.php?&check=".$check."&id=".$id."&code=".$code."&type=".$type."&del=".$del, 'r');
  11. $status = fgets($handle, 8);
  12. $aliveTime = fgets($handle, 24);
  13. fclose($handle);
  14. $aliveTime = rtrim($aliveTime);
  15. if($status==0){
  16. return false;
  17. }
  18. else{
  19. return $aliveTime;
  20. }
  21. }
  22.  
  23. }
  24.  
  25. ?>


nie używam tutaj czasu ważności kodu bo mi nie było to potrzebne smile.gif
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.