![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 24.08.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Witam
Jestem tu nowy, postanowiłem tu wejśc bo nie umiem sobie poradzić, dla niektórych pewnie, z prostym problemem. Założyłem strone www, w której dostęp będzie płatny za pomoca sms premium. Zarejestrowałem usługe w dotpay, pobrałem niezbędne pliki, zmodyfikowałem pod moje ID i wrzuciłem na serwer. Dotpay oferuje zestaw składający się z: index.html sprawdzacz.php sprawdz.php main.php-strona testowa, która ma sie otworzyć po wpisaniu kodu na stronie głównej(index.html) main.php jest zabezpieczona poprzez funkcję:<?php include "sprawdzacz.php"; ?>. Wszystko działa cacy, kod wygenerowany przekierowuje na main.php, kod zły odmawia dostępu...ale main.php można otworzyć bezpośrednio, omijając główną stronę np. wpisując ją do ulubionych. Ktoś pomoże? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 17 Dołączył: 4.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Bez kodu to my naprawdę dużo możemy (IMG:style_emoticons/default/Rkingsmiley.png)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
to zrób tak, żeby po poprawnej weryfikacji została ustawiona zmienna sesyjna i jak jej nie ma to nie można wejść na main.php
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 17 Dołączył: 4.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Ogólnie z tego co ja pamiętam, w tym skrypcie jest coś z sesjami.. dlatego napisałem, żeby podał kod.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
teraz patrzę, że sprawdzacz.php (o ile się kod nie zmienił) jest oparty o ciastka, i tam masz domyślnie ustawione przez jaki czas użytkownik ma jeszcze dostęp po wpisaniu poprawnego kodu, więc jeżeli nie chcesz żeby mógł sobie potem wchodzić to ustaw ten czas na np. na 10min.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 24.08.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
teraz patrzę, że sprawdzacz.php (o ile się kod nie zmienił) jest oparty o ciastka, i tam masz domyślnie ustawione przez jaki czas użytkownik ma jeszcze dostęp po wpisaniu poprawnego kodu, więc jeżeli nie chcesz żeby mógł sobie potem wchodzić to ustaw ten czas na np. na 10min. <?php # skrypt sprawdzający ważność kodu if (!isset($_COOKIE['ActiveCode'])) { print "koniec czasu<BR>"; unset($_COOKIE[session_name()]); exit; } ?> Taki jest sprawdzacz.php. Co tu zmienić? |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 56 Dołączył: 3.06.2010 Skąd: Tarnowskie Góry Ostrzeżenie: (0%) ![]() ![]() |
tutaj nic poszukaj ustawienia ciastka: funkcja setcookie()
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 24.08.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
tutaj nic poszukaj ustawienia ciastka: funkcja setcookie() Funkcja ciastka jest w sprawdz.php z tego co widze <?php $id = .......; # numer ID zarejestrowanego klienta $code = "........."; # identyfikator usług SMS $type = "sms"; # typ konta: C1 - 8 znakowy kod bezobsługowy # typ konta: sms dla sprawdzania SMSow $page = "main.php"; # nazwa pliku jaki ma sie zaladowac po podaniu poprawnego kodu # gdy sprawdzane będ± zarówno konta smsowe jak i konta przy płatno¶ciach kart± # to należy wtedy użyć zapisu: # $type = "c1,sms"; # # przy sprawdzaniu kilku kont o różnych identyfikatorach należy użyć zapisu: # $code = "abcd1,abcd2,kody2,kody6"; $del=0; # jeżeli kod ma być skasowany od razu po sprawdzeniu to ustaw warto¶ć na 1 ################################################################################ # $check = $_POST['check']; # podany kod na stronie gdzie wej¶cie jest płatne i wymagany jest zakupiony kod if($check == NULL) exit("Prosze wpisac kod"); $handle = fopen("http://dotpay.pl/check_code.php?id=".$id."&code=".$code."&check=".$check."&type=".$type."&del=".$del, 'r'); $status = fgets($handle, 8); $czas_zycia = fgets($handle, 24); fclose($handle); $czas_zycia = rtrim($czas_zycia); if ($status == 0) {print "Kod niepoprawny."; 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 } ?> |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 748 Pomógł: 388 Dołączył: 21.08.2009 Skąd: Gdynia Ostrzeżenie: (0%) ![]() ![]() |
zmienna, która Cię interesuje to $czas_zycia , w niej ustawiasz czas życia ciastka czyli czas dostępu w sekundach, więc ustaw jakiś krótki
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 24.08.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
zmienna, która Cię interesuje to $czas_zycia , w niej ustawiasz czas życia ciastka czyli czas dostępu w sekundach, więc ustaw jakiś krótki Aha...a konkretnie w którym miejscu, zakładając że chciałbym aby to była minuta?...Pamiętajmy że pisze w dziale Przedszkole:) Dzięki wszystkim, pomogły sugestie i z braku dalszych podpowiedzi doszedłem gdzie zmienić czas życia (IMG:style_emoticons/default/party.gif) ...ale pojawił sie drugi problem, moja stronka (płatna) przechodzi w podstronę, która już się otwiera bez problemu (IMG:style_emoticons/default/sciana.gif) . Czy ten czas życia można dodac na podstronce? Czy trzeba ją dodać w sprawdzaczu? Pomości! |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 17 Dołączył: 4.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 24.08.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Eh, no to nie jest takie proste, ta funkcja juz odnosi sie do strony glownej, jak ją wpisuje w podstrone to wywala błąd, probowalem dodac ją jako drugą strone do otwarcia po podaniu kodu i...też błąd
Problem rozwiązałem, dzięki za pomoc, sugestie pomogły a resztę sam jakoś wykombinowałem. Temat zamykam (IMG:style_emoticons/default/guitar.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 18:12 |