Zamierzam wprowadzić płatności na stronie. Po zarejestrowaniu się w serwisie dotpay.eu pobrałem odpowiednie skrypty, przystosowałem je do swojej strony i wrzuciłem na serwer. Jednak tutaj pojawił się problem. Aby móc wejść do poszczególnych galerii trzeba wykupić kod. Po wpisaniu go na komputerze urzytkownika pojawia się plik ciasteczka. Jednak w tym szczególnym wypadku żeby wejść do galerii muszę dwa razy wpisać kod z sms-a. Mam nadzieję, ze ktoś wie co trzeba zrobić.
Poniżej znajduję się kod sprawdzający kod z sms-a.
Kod
<?php
$id =; # numer ID zarejestrowanego klienta
$code = ""; # identyfikator usług SMS
$type = ""; # typ konta: sms - 8 znakowy kod bezobsługowy
$page = ""; # strona po poprawnej zapłacie
$del =; # jeżeli kod ma być jednorazowy to ustaw wartość 1
# ---------------------------------------------------------------------------------
$check = $_POST['check'];
if($check == NULL || empty($code))
exit("Prosze wpisac kod");
$array = array();
$array['code'] = $code;
$array['check']= $check;
$array['id'] = $id;
$array['type'] = $type;
$array['del'] = $del;
$ch = curl_init ();
curl_setopt ($ch, CURLOPT_URL, "https://ssl.allpay.eu/check_code.php");
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_TIMEOUT, 100);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $array);
$recv = curl_exec ($ch);
curl_close ($ch);
$dane = explode("\n", $recv);
$status = $dane[0];
$czas_zycia = $dane[1];
if ($status == 0) {header("Location: erovip.php"); exit;} # gdy kod niepoprawny
else
{ # gdy kod poprawny:
if (!isset($_COOKIE['ActiveCode']))
{
setcookie('ActiveCode',1, time()+$czas_zycia);
}
else
{
setcookie('ActiveCode',0, time()+2, "/");
setcookie('ActiveCode',1, time()+$czas_zycia, "/");
}
header("Location: ".$page); # wł±czenie strony głównej
}
?>
$id =; # numer ID zarejestrowanego klienta
$code = ""; # identyfikator usług SMS
$type = ""; # typ konta: sms - 8 znakowy kod bezobsługowy
$page = ""; # strona po poprawnej zapłacie
$del =; # jeżeli kod ma być jednorazowy to ustaw wartość 1
# ---------------------------------------------------------------------------------
$check = $_POST['check'];
if($check == NULL || empty($code))
exit("Prosze wpisac kod");
$array = array();
$array['code'] = $code;
$array['check']= $check;
$array['id'] = $id;
$array['type'] = $type;
$array['del'] = $del;
$ch = curl_init ();
curl_setopt ($ch, CURLOPT_URL, "https://ssl.allpay.eu/check_code.php");
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_TIMEOUT, 100);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $array);
$recv = curl_exec ($ch);
curl_close ($ch);
$dane = explode("\n", $recv);
$status = $dane[0];
$czas_zycia = $dane[1];
if ($status == 0) {header("Location: erovip.php"); exit;} # gdy kod niepoprawny
else
{ # gdy kod poprawny:
if (!isset($_COOKIE['ActiveCode']))
{
setcookie('ActiveCode',1, time()+$czas_zycia);
}
else
{
setcookie('ActiveCode',0, time()+2, "/");
setcookie('ActiveCode',1, time()+$czas_zycia, "/");
}
header("Location: ".$page); # wł±czenie strony głównej
}
?>
Liczę na szubką odpowiedź
W związku z brakiem zainteresowania chciałbym lekko zmienić moje zapytanie. Mianowicie skrypt chodzi dobrze jednak gdy raz wpisze się kod z sms-a po ponownym uruchomieniu przeglądaki trzeba wpisać go ponownie mimo tego iż przeglądarka pozostawia cookies na dysku urzytkownika. Jedynie nie występuje taka sytuacja w IE, a w Mozilli i Operze tak.
Mam nadzieje, że ktoś mi odpisze.
Mam nadzieję, że ktoś mi odpisze