![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 21.04.2014 Ostrzeżenie: (0%) ![]() ![]() |
Chciałbym napisać skrypt, który:
-nie działa gdy sam kliknę w link (tylko gdy osoba z innego komputera go kliknie) -jedna osoba może kliknąć w link tylko jeden raz Prosiłbym o pomoc. Z proxy sobie poradziłem teraz tylko to. Z góry dzięki (IMG:style_emoticons/default/wink.gif) Oto fragment mojego kodu Kod db_connect();
if($_GET['ref']) { $query1 = mysql_query("UPDATE users SET zdolnosc=zdolnosc+1 WHERE ref = '$_GET[ref]'"); } |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 417 Pomógł: 44 Dołączył: 23.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
możesz sprawdzać IP lub tworzyć plik cookie. Nie idzie się przed tym zabezpieczyć na 100%
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 21.04.2014 Ostrzeżenie: (0%) ![]() ![]() |
Jak sprawdzić ip i nie zezwolić na wykonanie skryptu?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 17.03.2009 Skąd: Karpacz Ostrzeżenie: (0%) ![]() ![]() |
IP:
Przeanalizuj tez:
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 21.04.2014 Ostrzeżenie: (0%) ![]() ![]() |
Kod if($_GET['ref']) { db_connect(); $selip = mysql_query("SELECT ip1, ip2, ip3 FROM users WHERE ref = '$_GET[ref]'"); $fetched = mysql_fetch_array($selip); $ip = $_SERVER["REMOTE_ADDR"]; if($fetched["ip1"] !== $ip || $fetched["ip2"] !== $ip ||$fetched["ip3"] !== $ip) { $query1 = mysql_query("UPDATE users SET zdolnosc=zdolnosc+1 WHERE ref = '$_GET[ref]'"); if($fetched["ip1"] == 0){ $query2 = mysql_query("INSTERT INTO users (ip1) VALUES ('$ip')"); } elseif($fetched["ip2"] == 0){ $query2 = mysql_query("INSTERT INTO users (ip2) VALUES ('$ip')"); } elseif($fetched["ip3"] == 0){ $query2 = mysql_query("INSTERT INTO users (ip3) VALUES ('$ip')"); } } Zrobiłem to w ten sposób. Czy to będzie działać? Nie mam tego jak sprawdzić bo pracuję na localhost. Domyślna wartość w kulumnach ip1, ip2, ip3 to "0". Ten post edytował jahonen 11.05.2014, 08:42:42 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
1. Wstawiaj kod w PHP w odpowiedni BBCode, bo dużo lepiej się czyta.
2. Nie, to nie będzie działać m.in. z powodu literówek "INSTERT" 3. Wstawiasz do tabeli users każdemu użytkownikowi do odpowiedniej kolumny ip, a nie konkretnemu. 4. Podatne na SQL Injection jak cholera. 5. Jak włączysz raportowanie błędów, to zobaczysz, że if($_GET['ref']) wypluje ci błąd. Podpowiedź isset 6. Sprawdź różnicę między !== a !=, bo w tym przypadku może spowodować złe działanie. Ten post edytował Turson 11.05.2014, 11:31:32 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 21.04.2014 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki stary, już wiem jak się za to zabrać (IMG:style_emoticons/default/wink.gif)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.09.2025 - 15:57 |